@react_js

Страница 955 из 5115
Amon Bower
15.02.2017
10:29:59
Как в React сделать Layout систему? Есть у кого-нибудь ссылка (не гугл), я уже пошарил

Сергей
15.02.2017
10:33:27
Как в React сделать Layout систему? Есть у кого-нибудь ссылка (не гугл), я уже пошарил
смотря что ты юзаешь если styled-components, то react-styled-flexboxgrid, styled-grid

для JSS тоже думаю найдется

если CSS-modules то можешь скопипастить откуда нить или заюзать обычный CSS-грид

Google
qap
15.02.2017
10:35:17
Всем привет. Вопрос по react-router (v4 alpha). Пытаюсь из этого примера https://reacttraining.com/react-router/examples/auth-workflow переделать const PrivateRoute = ({ component, ...rest }) ... в компонент. Вопрос: как получить ...rest ? component вроде получаю через props.component а как ...rest?

qap
15.02.2017
10:36:36
нет

Сергей
15.02.2017
10:36:47
прочитай, тогда поймешь

... в объекте имеет свой смысл

qap
15.02.2017
10:37:17
спасибо!

Сергей
15.02.2017
10:38:09
условно, эти выражения равны



Дмитрий
15.02.2017
10:43:14


Сергей
15.02.2017
10:43:52
получше, но мне кажется на React.createElement это выглядело бы лучше

Дмитрий
15.02.2017
10:43:58
Соответственно без логики можно просто писать const Chevron = applyStyles(() => <i styleName='chevron-icon' /> )

Сергей
15.02.2017
10:44:51
вот в этом примере JSX портит код немного

Google
Сергей
15.02.2017
10:44:53
ща покажу

Дмитрий
15.02.2017
10:45:30
Ну тут компонент очевидно не фонтан, это что первое в качестве примера попалось

Сергей
15.02.2017
10:47:25


Дмитрий
15.02.2017
10:49:08
Тут возможно да, так лучше)

Сергей
15.02.2017
10:49:40
можешь показать applyStyles?



Дмитрий
15.02.2017
10:54:48
Не, camelCase в css не стоит)

import CSSModules from 'react-css-modules' export const fixedCSSModules = (styles: Object, options?: CssOptions) => (Comp) => CSSModules(Comp, styles, options) // обертка над react-css-modules, короче ... import {fixedCSSModules} from '../../utils' import styles from './dropdown-plus.module.less' const applyStyles = fixedCSSModules(styles)

Это короче способ ссылаться на css modules классы просто текстом, без className={styles['very-uncomfortable']}

Сергей
15.02.2017
10:58:33
я че-то подумал, ты jss юзаешь

Дмитрий
15.02.2017
10:59:05
Я так и понял)) Юзаю, но только когда это требуется

Я себя чувствую ортодоксом ? Но реально, учитывая приёмы выше, для jss остаётся довольно небольшая доля кейсов

Дмитрий
15.02.2017
11:04:43
Ну стандартно, когда есть прямая связь данных из js и стилей. Параметрические цвета, размеры, ссылки, вот это всё

А вот просто логику / паттерн-матчинг уже можно делать просто оперируя строками стилей в classNames

Сергей
15.02.2017
11:06:40
можешь ещё одну функцию кинуть? fixedCSSModules

Сергей
15.02.2017
11:07:12
а блин

Дмитрий
15.02.2017
11:07:25
просто curry с переносом первого параметра вперед)

Причём до этого я слышал не айс отзывы о react-css-modules, но оказалось, что вполне ок

Google
Сергей
15.02.2017
11:09:34
он на лету css компилит?

или в вебпаке сначала css лоадер

Дмитрий
15.02.2017
11:10:31
Второе

Это по сути хелпер для ассоциаци значений (названий классов) с объектом (import style from 'style.css') и присвоения результата в className

Сергей
15.02.2017
11:13:09
где-то уже видел такое

он проходит по child'ам?

Дмитрий
15.02.2017
11:13:40
Увы, нет

Сергей
15.02.2017
11:13:54
но у тебя там styleName же

Дмитрий
15.02.2017
11:16:57
Всё, что напрямую написано в этом компоненте — транспилируется, но в дочерние компоненты не залезет

Можно по другому делать, если внутри такого компонента написать например <MyButton styleName='btn' /> то в MyButton передаётся уже готовое привычное поле className

Azein
15.02.2017
11:21:59
давно кстати имею проблему с css-модулями и именами анимаций

'css-loader?&modules&importLoaders=1&localIdentName=[name]__[local]' вот подключены, и там при задани animation-name из кейфрейма того же компонента чет не заводится

Azein
15.02.2017
11:23:57
ибо оно добавляет localIdentName как анимациям и из за этого все плохо. в хроме можно задавать имя анимации строково типа 'Component__animationName', в лисе так не выйдет

в issues на гитхабе единственный разумный выход - вынести анимации в отдельный css который не связан с модулями, ничего лучше не нашел

Alexey
15.02.2017
11:24:53
печально..

Azein
15.02.2017
11:25:35
ну возможно я прост криво настраиваю но вроде видел немало похожих кейсов от чуваков

Sergei
15.02.2017
11:25:53
Всем привет! У меня тут кретинский вопрос весьма! Возможноли на реакте сделать бота в тг? Спасибо!

Alexey
15.02.2017
11:26:30
да

только реакт это реакт

а бот это бот

Google
Дмитрий
15.02.2017
11:27:11
?

Sergei
15.02.2017
11:27:15
Ну связка 1с реакт Тг в приницпе вомзожна. Да, по стуи ТГ бот-это фронт

Правильно все понимаю?

Дмитрий
15.02.2017
11:27:28
Вообще идея сумасшедшая конечно))

Sergei
15.02.2017
11:27:35
Я просто не разраб, а сейчас вот надо бы совсеми иэтими делами разобраться)

Dmitry
15.02.2017
11:27:38
нет. неправильно

Дмитрий
15.02.2017
11:27:39
Я про рендеринг интерфейса бота реактом))

Admin
ERROR: S client not available

Dmitry
15.02.2017
11:27:50
потому что тг-боты пишутся сервер-сайд https://core.telegram.org/bots/samples

а реакт это фреймворк для рендера клиент-сайд

и эти две вещи друг с другом вообще никак не пересекаются

Sergei
15.02.2017
11:28:21
нет. неправильно
Хм. Тогда я в татольном анусе непонимания)

pepsi ¯\_(ツ)_/¯
15.02.2017
11:29:58
а реакт это фреймворк для рендера клиент-сайд
они вынесли рендер для браузера в отдельную либу под названием react-dom, а сам реакт можно где угодно использовать

только рендерить нечем, хе-хе

вот наркоманы: https://github.com/keithpops/jeoparty

вот еще, музыку можно на реакте писать https://github.com/FormidableLabs/react-music

Олег
15.02.2017
11:34:54
Дмитрий
15.02.2017
11:35:10
вот еще, музыку можно на реакте писать https://github.com/FormidableLabs/react-music
Нормальные музыкальные приложения ждут имплементации webassembly

Google
pepsi ¯\_(ツ)_/¯
15.02.2017
11:38:38
Нормальные музыкальные приложения ждут имплементации webassembly
в целом да, но все равно можно будет продолжать на реакте писать, какая разница, во что jsx транспайлить?

Дмитрий
15.02.2017
11:39:37
Я давно на досуге размышляю, какая реализация интерфейса / модели данных годится для музыкального софта. Прихожу к выводу, что на реакте пока сложновато будет

pepsi ¯\_(ツ)_/¯
15.02.2017
11:40:30
думаю, ты прав

Дмитрий
15.02.2017
11:42:35
Жду пока придумают подход, в котором будет ещё меньше бойлерплейта) Как по интерфейсу, так и по модели данных

Dmitriy
15.02.2017
11:42:57
Promise.prototype.then всегда через event loop работает?

const promise = new Promise((resolve, reject) => { console.log(1); resolve(); }); console.log(2); promise.then(() => console.log(3)); console.log(4); 1 2 4 3

Oleh
15.02.2017
14:03:57
привет всем! Есть вопрос, кто как реализовывает loader в компонентах, я в плане дублируете ли их в тех компонентах, где он нужен или это 1 глобальный, который висит в рутовом компоненте и перендерит все приложение, если его запустит или это hoc или еще что-то, кто что использует?

Dmitry
15.02.2017
14:08:41
Есть глобальный для глобальных релоадов, есть отдельные внутри компонентов, по типу всяких кнопок и подобных вещей

Oleh
15.02.2017
14:10:32
ну вот допустим лоадер для загрузки какого-то списка в компоненте, но а так же лоадер для апдейта елемента списка или создания нового или удаления

это получается разные лоадеры, ну в структуре, или один и тот же?

Dmitry
15.02.2017
14:11:31
В таком кейсе скорее всего это фейд всего списка + лоадер поверх этого фейда, пока список не обновится. Если только нет каких-то особых требований по их разделению на разные.

Oleh
15.02.2017
14:15:11
я понимаю, но как это структурно выглядит? То есть hoc или просто в компоненте стейт есть isLoading или все-таки глобально на приложение isLoading какой-то(этот вариант вообще мне не нравится, т.к. перерендер всего приложения происходит) или еще как-то

просто допустим у меня есть 5 табок и допустим какие-то еще данные в хедере или сайдбаре, которые 1 раз за приложение грузятся, с разными данными на каждом и при переключении мне нужно подгружать данные или на какой-то табке я добавляю/удаляю елемент, а внутри каждой из табок в списках, допустим, есть еще подсписки, которые можно так же менять

какого-то универсального лоадера судя по всему не выйдет, допустим hoc, я просто склоняюсь к этому, но не уверен, может еще есть варианты

Dmitriy
15.02.2017
15:01:22
есть какие-то либы упрощающие обход ast? нужно узнать содержит ли выражение переменные

не хочется свич писать на каждый тип выражения

нашел какой-то https://github.com/estools/estraverse

Vadim
15.02.2017
15:06:11
Что именно? Компилить фишки в es5?
Ну например, как указать что переменная может содержать только строку в определенном формате? Ну например строковая переменная должна содержать только числа. Или только дату в определенном строковом представлении?

Страница 955 из 5115