@react_js

Страница 784 из 5115
Таймураз
28.12.2016
18:03:27
Если большой стор, то редакс проседать начинает?

code4aman
28.12.2016
18:03:42
Есть всякие хелперы ж типа редакс-акт

А так, создатель уже предупредил что много кода по дефолту, дальше сами виноваты

Алексей
28.12.2016
18:05:08
Google
Дмитрий
28.12.2016
18:05:47
Алексей
28.12.2016
18:06:12
Я про возможности преобразований, а не про то как записывается)
преобразования можно спокойно внести в сеттер

или в функцию/метод

Alexey
28.12.2016
18:07:03
в MobX и Redux/Flux заложены абсолютно противоположные принципы, как их можно сравнивать на уровне имплементации?

Алексей
28.12.2016
18:08:12
А в моём идеальном мире единорогов и бабочек есть такая штука как Object.observe, которая вызывается один раз для корневого объекта стора, и при любом изменении этого самого стора и его полей и полей этих полей и так далее автоматически вызывает туже перерисовку React.

Но увы.

Дмитрий
28.12.2016
18:08:38
преобразования можно спокойно внести в сеттер
Смысл в том, что я могу написать отдельный редюсер, глядящий только за своим полем, получается набор гораздо более очевидных функций и при том плоский вне зависимости от глубины

Dreamerinnoise
28.12.2016
18:08:43
https://hackernoon.com/an-artificial-example-where-mobx-really-shines-and-redux-is-not-really-suited-for-it-1a58313c0c70#.wy9nc3r8g

Была статья, что мобкс

Дмитрий
28.12.2016
18:09:18
То есть по сложным преобразованиям тут единый сеттер как концепция проигрывает

Алексей
28.12.2016
18:09:37
имплементируй и выложи на NPM
костыльно получится

Alexey
28.12.2016
18:09:53
почему же?

Google
Алексей
28.12.2016
18:11:12
То есть по сложным преобразованиям тут единый сеттер как концепция проигрывает
Так функцию же можно написать, да хот тот же редьюсер, если нужно. И в отличии от Redux для всех остальных тривиальных изменений не писать редьюсеры/экшены

Дмитрий
28.12.2016
18:11:33
Я экшны руками не пишу

Алексей
28.12.2016
18:12:09
почему же?
потому что нужно будет на каждое свойство повесить свой сеттер и ещё постоянно проверять, а не появились ли у нас новые свойства

во всём графе объектов

Алексей
28.12.2016
18:12:46
Простейший Observe имплементируется в 15 строчек
поделитесь сакральным знанием?

Дмитрий
28.12.2016
18:12:58
Я же уже говорил, Proxy api

Дмитрий
28.12.2016
18:13:17
Можно перехватывать любые обращения к объекту

Как то - изменение свойств, добавление, удаление, проверка их на существование, и так далее

Тебе просто предоставляют хэндлеры для всего - defineProperty, deleteProperty и т.д.

Алексей
28.12.2016
18:14:22
Можно перехватывать любые обращения к объекту
мне нужно перехватывать не только все обращения к объекту, но и все обращения к тем объектам, которые находятся внутри него

Дмитрий
28.12.2016
18:14:54
Рекурсия, ещё строчек 30

Алексей
28.12.2016
18:15:37
всё равно костыльно получается, так как нужно оборачивать в прокси все добавления/изменения свойств, плюс с this проблемы возникают

стоп

или не возникают, надо поподробнее изучить этот вопрос

Дмитрий
28.12.2016
18:17:00
Не возникают

На это Reflect

Ҫѐҏӗѫӑ
28.12.2016
18:18:10
вы сабжект из rxjs изобретаете?

Google
Ҫѐҏӗѫӑ
28.12.2016
18:18:55
или мутейшн обзерверс?

(все не читал)

Алексей
28.12.2016
18:19:28
то есть при: const object = { x: 5, change() { this.x = 7; } }; const proxy = new Proxy(object); proxy.change(); будет вызван какой-то хук у прокси?

Ҫѐҏӗѫӑ
28.12.2016
18:20:10
ясн

http://caniuse.com/#feat=mutationobserver

Алексей
28.12.2016
18:21:06
http://caniuse.com/#feat=mutationobserver
только не для DOM, а для обычных JS объектов

Ҫѐҏӗѫӑ
28.12.2016
18:21:16
а, значит rxjs-таки

ясн

Дмитрий
28.12.2016
18:21:55
rxjs норм

Eugene
28.12.2016
19:05:22
Кто-нибудь, объясните пожалуйста, почему в airbnb style guide советуют использовать для stateless компонентов обычные функции, а не стрелочные? Как вы обычно объявляете stateless компоненты? https://github.com/airbnb/javascript/tree/master/react#class-vs-reactcreateclass-vs-stateless

Таймураз
28.12.2016
19:07:56
Запятая ещё, ага))
Ее в insert не было

Паша
28.12.2016
19:08:35
Но в грамматике RusLang'a точно описана

Таймураз
28.12.2016
19:09:52
Моя либа- мои правила?

Ладно, сделай пул реквест, внесу изменения

Eugene
28.12.2016
19:15:05
а зачем везде arrow function пихать?)
Мне они симпатичны, например)

Nikita
28.12.2016
19:16:18
ты из тех, кто бэктики везде пишет?

Eugene
28.12.2016
19:16:50
ты из тех, кто бэктики везде пишет?
Я из тех, кто не знает, что такое бэктики(

Google
a
28.12.2016
19:16:57
а зачем везде arrow function пихать?)
код моднее выглядит

Nikita
28.12.2016
19:16:59
`

Eugene
28.12.2016
19:17:16
`
Да)

Nikita
28.12.2016
19:17:16
require(`react)`

Eugene
28.12.2016
19:17:50
require(`react)`
text = `hello ${world}` ?

Nikita
28.12.2016
19:18:23
тогда все с тобой ясно) любой стайлгайд - набор opinionated решений, выкини то что не нравится, добавь свое)

но вообще судя по всему они юзают функции из-за уже решенной проблемы дебага

Eugene
28.12.2016
19:19:40
тогда все с тобой ясно) любой стайлгайд - набор opinionated решений, выкини то что не нравится, добавь свое)
Мне интересен выбор знающих разработчиков. Почему обычные функции, а не arrow и т.п. Мб я что-то не понимаю)

Admin
ERROR: S client not available

Nikita
28.12.2016
19:20:04
там такие же разработчики, как и тут в чате сидят)

// bad (relying on function name inference is discouraged) ну и коммент все поясняет)

Eugene
28.12.2016
19:21:08
Тогда тем более интересно, дабы услышать мнения знающих людей)

// bad (relying on function name inference is discouraged) ну и коммент все поясняет)
Меня этот коммент не убедил, откровенно говоря

Nikita
28.12.2016
19:22:07
ну так да) это уже давно пофиксили. сначала в babel, потом в хроме

Eugene
28.12.2016
19:22:29
Понял)

Ҫѐҏӗѫӑ
28.12.2016
20:38:11
там не только в .name дело

хотя в основном в этом

бтв хром покажет имя переменной в этом случае вроде

Kreizo
29.12.2016
09:33:28
Реактогоспода, поздравляю вас всех с наступающим и желаю вайфай в хату, коддинг в радость, таски в сладость, пальцам ходу, голове приходу, удачи в поиске работы, сто баксов по сдаче(кореша на галеру), ходу ФРОНТЕНДСКОМУ, смерти БЕКЕНДСКОМУ (на самом деле пис)

Google
Sasha
29.12.2016
10:23:29
ребята простой вопрос: есть такая структура <main> <one/> <two/> </main> внутри two есть кнопка, по нажатию должен происходить экшн в компоненте one. Торможу, как это сделать красиво? без всяких рефов и вынесений через них нужных функций

Dmitry
29.12.2016
10:25:37
Пробрасываешь onButtonClick в two, который меняет значение пропса, прокидываемого в one

Roy
29.12.2016
10:26:59
в main описываешь фукнцию, которая меняет state main, кидаешь ее в props two и вызывешь. в one по измению props (componentWillReceiveProps) делаешь что надо. если просто переменную в one нужно поменять, то тащишь ее из props

Sasha
29.12.2016
10:28:31
спасибо, поковыряю

Roy
29.12.2016
10:28:58
или юзай redux, красивее

Sasha
29.12.2016
10:29:28
шеф не разрешает :)

Roy
29.12.2016
10:29:43
бред)

reflux еще можно

или свой Диспетчер заведи, как у facebook

Кто кстати понял, чем выгоднее PureComponent от обычного?

Danila
29.12.2016
10:33:17
смотря что называть обычным

Roy
29.12.2016
10:33:55
ну есть React.Component а щас появился React.PureComponent

Danila
29.12.2016
10:34:19
ммм, а он не имеет отношения к pure-render-mixin?

имеет

Roy
29.12.2016
10:35:04
a new base class to extend, replacing react-addons-pure-render-mixin now that mixins don't work with ES2015 classes

Danila
29.12.2016
10:36:08
ну всё очевидно тогда. выгоднее shallow-compare из коробки, отсутствием необходимости переопределять shouldcomponentupdate и т.п.

Roy
29.12.2016
10:38:13
ну получается PureComponent не перерендеривается, когда перерендериваются родители его, или я что то путаю?

Danila
29.12.2016
10:38:52
он перерендеривается только если были изменения в его props/state

причём не глубокие изменения, а верхнего уровня

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