@react_js

Страница 2022 из 5115
Nikita
24.08.2017
08:50:39
Ну, значит, ты где-то лажанул

Oleg ?
24.08.2017
08:50:49
У меня обычный компонент, и в родтеле вызывается forceUpdate

А вот ребёнок не обновляется

Nikita
24.08.2017
08:51:25
Ванговать без кода сложно

Google
Vladimir
24.08.2017
08:51:28
100 строк? ))
90 строк

Oleg ?
24.08.2017
08:51:31
Я передаю в него только один приметив и этот приметив не меняется

Ща

Ага, в сендбоксе у меня всё работает

https://codesandbox.io/s/61nk2j875r

Nikita
24.08.2017
08:57:33
Эт норм?)

Oleg ?
24.08.2017
08:57:53
Он сегодня что - то тупит

Попробуй ещё раз

Может npm'у плохо

Sergey
24.08.2017
09:03:51
Был еще вот такой вот гость. Но чет там было багов придостаточно, но зато можно стримить в риал-тайме. https://www.webpackbin.com/

Oleg ?
24.08.2017
09:03:55
Что за бред, в сендбоксе работает, в проекте нет ?

Nikita
24.08.2017
09:04:11
Попробуй ещё раз
С 100й попытки export default ({ time }) => <h1>Time: {Date.now() - new Date(time).getTime() }!</h1>; Так это изи. Должно работать

Google
Sergey
24.08.2017
09:06:08
В вебпакбине можно было и код стримить. Там у зрителя открывалось и окно предпросмотра, и окно редактора.

Хотя тут тоже наверное доски в риал-тайме обновляются...

Я закреплю тут на всякий случай... #react_online https://codesandbox.io/ https://stackblitz.com

Sergey
24.08.2017
09:08:54
Можно вообще я думаю в прикрепленые вынести, чтобы код через них шэрили

Oleg ?
24.08.2017
09:11:32
С 100й попытки export default ({ time }) => <h1>Time: {Date.now() - new Date(time).getTime() }!</h1>; Так это изи. Должно работать
Походу у меня он не тикает, потому что - то этот компонент использует Redux, другого объяснения у меня нет

В него передаётся один параметр из конфигурации,, который лежит в сторе

*это я объяснил зачем там редакс

Sergey
24.08.2017
09:12:21
С телефона неудобно
Ну можно посмотреть какие редакторы адаптируются под телефонное разрешение...

Просто если какой-то большой кусок, то довольно сложно его тут читать из сообщения

Sergey
24.08.2017
09:14:02
Скриншот проще и быстрее
Ну а если это несколько компонентов... Ну вообщем мое дело предложить

Nikita
24.08.2017
09:14:32
*это я объяснил зачем там редакс
Когда ты коннектишь компонент - можно передать параметр pure. По умолчанию он true - то есть делает твой компонент чистым

Глянь доки к коннекту

Emir
24.08.2017
09:14:46
Кто нибудь может с этим помочь? https://github.com/metr1ckzu/react-calculator/tree/testing

Nikita
24.08.2017
09:15:08
*это я объяснил зачем там редакс
Но ставить pure в false - так себе решние (наверное)

Oleg ?
24.08.2017
09:15:35
Глянь доки к коннекту
Ага, спасибо большое ?

code4aman
24.08.2017
09:18:55
Google
code4aman
24.08.2017
09:19:29
типа "transform": { "^.+\\.(js|jsx)$": "<rootDir>/node_modules/babel-jest" }

Сергей
24.08.2017
09:19:38
парни, есть функция в connect((state, props) => {}), как сделать чтобы она не вызывалась при любом изменении в сторе?

Emir
24.08.2017
09:20:11
выше сказали же, подрубить бейбел
это ведь идет в package.json?

Сергей
24.08.2017
09:21:00
реселект?
у меня выборка по динамическому айдишнику, реселект такое вроде не может?

const item = state.table.items[props.id]

Denis
24.08.2017
09:22:02
Ну ты айдишник где-то же хранишь

Вот пусть реселект получает его из стора

И отдает тебе выборку

Сергей
24.08.2017
09:22:33
айдишник извне, он передается пропом

Denis
24.08.2017
09:23:26
Ну селекторы вторым параметром помимо стейта принимают пропы:)

Emir
24.08.2017
09:24:15
ага, в секции жеста
кажись сдвинулся с мертвой точки, в другую стенку



Nikita
24.08.2017
09:24:31
Emir
24.08.2017
09:24:33
предпологаю, что это что-то связанные с env в бебеле?

code4aman
24.08.2017
09:25:27
jasmine/Env.js? не думаю

Nikita
24.08.2017
09:25:33
у меня выборка по динамическому айдишнику, реселект такое вроде не может?
Только мап стейт объявляй нормально const mapState = () => { const selector = createSelector() return (state, props) => { return selector(state, props) } }

За деталями в доки к коннекту и реселектуъ

Сергей
24.08.2017
09:27:51
как вообще работает reselect внутри?

Google
Сергей
24.08.2017
09:27:59
как он понимает изменился массив или нет

или объект вложенный

Nikita
24.08.2017
09:28:17
Эм

Ну доки же есть)

Denis
24.08.2017
09:28:25
Он сравнивает по ===

Если хочешь изменить поведение прокидываешь функцию сравнения

Admin
ERROR: S client not available

Denis
24.08.2017
09:29:37
Но если хочешь это сделать, значит что-то делаешь неправильно

Alexander
24.08.2017
09:29:59
Друзья, у меня к вам вопрос в духе "как лучше?", есть большой saas проект, хочу сделать серверную часть как API и фронт на React, но как организовать фронт не знаю. Хотел изначально сделать SPA, остановило то что тяжелые файлы стилей/скриптов становятся + множество маршрутов. Теперь думаю сделать под каждую страницу свою "точку входа", где помимо файлов vendors, manifest будет один файл скриптов, стилей нужной страницы и ничего лишнего. Но тут (как я думаю) проблема по организации красивых url и в целом читаемости кода. Что посоветуете? Может почитать чего? Ссылки на примеры хорошей архитектуры? Накиньте мыслей пожалуйста, я в react новый человек, не кидайте камнями

Emir
24.08.2017
09:30:28
jasmine/Env.js? не думаю
а что значит at Object.<anonymous> (src/app.test.js:17:1) Нифига не понятно(

code4aman
24.08.2017
09:31:24
это откуда ваще? из CRA?

Emir
24.08.2017
09:31:35
да

code4aman
24.08.2017
09:31:57
а зачем там jasmin?

Сергей
24.08.2017
09:32:02
Он сравнивает по ===
ну так объекты какой смысл сравнивать? они же всегда будут разными

Emir
24.08.2017
09:32:17
а зачем там jasmin?
я даже не представляю, что это

Сергей
24.08.2017
09:32:17
Emir
24.08.2017
09:32:20
https://facebook.github.io/react/docs/installation.html

code4aman
24.08.2017
09:32:26
а с jest он же не нужен?

Emir
24.08.2017
09:32:36
я просто поставил CRA

Google
Emir
24.08.2017
09:32:56
ну и потом 4 часа мучений с тестами, почему нифига жест не работал, но жасмин я не ставил кажись

Nikita
24.08.2017
09:33:00
или объект вложенный
createSelector( selectA, selectB, (a, b) => result ) Первые N (в примере 2) функции получают куски стейта. Т.е. если ты вызвал селектор как selector(state, props), то в первые две функции будут переданы параметры state и props. То, что вернут эти функции и будет сравниваться: по-умолчанию через ===, но можно прокинуть свою любую функцию. В последнюю функцию всегда передается результат работы предыдущих. Она вызывается, только когда хоть одно из этих значений изменилось. Пример const selector = createSelector( (state, props) => state.table.items[props.id], item => ({ item }) ) selector(state, props) Но в данном случае селектор нахрен не нужен. Он нужен только когда ты собираешь сложный стейт из нескольких сторов

Denis
24.08.2017
09:33:38
Если у тебя есть изменения, ты изменяешь стейт, если их нет - не изменяешь, соответственно объект либо новый, либо старый ??

Nikita
24.08.2017
09:33:43
Короче, нет времени объяснять) Изучай сам

Denis
24.08.2017
09:33:57
Прочувствуй :)

Alexander
24.08.2017
09:34:03
code4aman
24.08.2017
09:34:29
ну и потом 4 часа мучений с тестами, почему нифига жест не работал, но жасмин я не ставил кажись
а жест там не из коробки настроен? в таком случае там секция должна быть про настройку

Emir
24.08.2017
09:35:56
а жест там не из коробки настроен? в таком случае там секция должна быть про настройку
ну если он пришел мне с CRA, то должен по идеи из коробки работать

Сергей
24.08.2017
09:35:59
там типа выборки и сортировки и они зависят от изменений в сторе массива и объекта

Nikita
24.08.2017
09:36:24
думаю как бы сделать чтобы на каждый чих в сторе она не вызывалась
что я могу сказать? reselect - верное направление) ознакомься внимательно и запиливай к себе

Emir
24.08.2017
09:37:07
а жест там не из коробки настроен? в таком случае там секция должна быть про настройку
ну жесть я настраивал по этому http://facebook.github.io/jest/docs/getting-started.html#content до webpack'a

Nikita
24.08.2017
09:37:46
там типа выборки и сортировки и они зависят от изменений в сторе массива и объекта
const selector = createSelector( (state, props) => state.table.items, // array (state, props) => state.table.sortColumn[props.tableId], // string (items, sortKey) => ({ items: doSort(items, sortKey) }) ) selector(state, props)

Nikita
24.08.2017
09:38:43
там типа выборки и сортировки и они зависят от изменений в сторе массива и объекта
Примерно такая штука позволит делать сортировку, только когда изменился массив, либо ключ сортировки

Denis
24.08.2017
09:38:59
Он скорее всего изменяет объект даже если данные одни и те же

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