@react_js

Страница 683 из 5115
Sanjar
02.12.2016
07:28:04
А, всё.

Решилось.

Vladimir
02.12.2016
07:28:51
Решилось.
В чем было дело?

Sanjar
02.12.2016
07:29:15
Спасибо за уделенное время, запустил от лица админа, вроде бы работает. Вечно забываю об этом, хотя простая вещь.

Google
Sanjar
02.12.2016
07:30:02
Надо вообще перейти на Ubuntu, но из-за того, что у меня кабельный инет там настройка превратилась в ад :D

Den
02.12.2016
07:42:29
Render to string и сравнить строки?
Если с этой стороны смотреть, то из коробки идёт сохранение снапшота в файл, их сравнение, вывод диффа, возможность с помощью одного ключа пересохранить снапшоты.

и всё это вызов одной функции

ещё забыл, автоматическая организация снапшотов (по тесткейсам)

Sanjar
02.12.2016
07:43:34
Кто-нибудь знает, есть ли аналог Extract for Brackets, но для Atom?

Den
02.12.2016
07:44:15
Так в чем профит? Я же могу строку хранить в переменной и сравнить по всем сценарием
в какой переменной? Первый раз у тебя ничего нет. Тебе нужно сделать первый рендер, сохранить его, а потом сравнивать с ним

Den
02.12.2016
07:45:00
а в jest я просто напишу .toMatchSnapshot()

если это первый запуск, он сохранит, в нужном файле, под нужным именем (чтобы не пересекались можественные запуски из разных кейсов)

Google
Den
02.12.2016
07:46:48
мы или про разное говорим, или я что-то не понимаю :)

Aleh
02.12.2016
07:46:52
Но тебе придётся следить за изменением компонента

Правильно?

Den
02.12.2016
07:47:52
конечно, если что-то изменится, я должен убедится, что это ок, а не баг. Но компоненты не меняются часто

Когда я в диффе, который выведет jest, увижу, что всё ок, то запущу тесты c -u, и снапшоты автоматом обновятся

Vladimir
02.12.2016
08:36:45
Nikita
02.12.2016
08:39:51
это пока rm -rf / под рутом не напишеш на боевом сервере, не приходит

n4nn31355
02.12.2016
08:49:12
Ребзя, а кто-нибудь ковырял todomvc на чистом reactjs? Откуда там Router подключается, что-то никак не пойму

Art
02.12.2016
08:57:35
https://twitter.com/sebmck/status/804408814657224706

Это драма или шуточки?

Sanjar
02.12.2016
09:07:34
Не работай под рутом
Что такое рут?

Nikita
02.12.2016
09:07:54
root

Evjeni
02.12.2016
09:08:21
Что такое рут?
http://help.ubuntu.ru/wiki/%D1%81%D1%83%D0%BF%D0%B5%D1%80%D0%BF%D0%BE%D0%BB%D1%8C%D0%B7%D0%BE%D0%B2%D0%B0%D1%82%D0%B5%D0%BB%D1%8C_%D0%B2_ubuntu

Сергей
02.12.2016
10:23:10
mvc на реакте это плохая затея

Дмитрий
02.12.2016
10:24:51
Если доводить идеи redux до конца, то в итоге именно он и получится))

Alexey
02.12.2016
10:25:22
Nikita
02.12.2016
10:28:26
тем что все что угодно можно к mvc свести)

Nikita
02.12.2016
10:29:15
а вы точно не путаете MVC, MVP и другие MV* ?

Google
Alexander
02.12.2016
10:29:19
тем что все что угодно можно к mvc свести)
Да, главное правильно три буквы подписать

Сергей
02.12.2016
10:29:56
Nikita
02.12.2016
10:30:55
редьюсеры - модели, connected компоненты - контроллеры, тупые компоненты - вьюхи. MVC как из книжки)

Сергей
02.12.2016
10:31:18
на словах всё можно свести)

но по факту эт немного не так

Nikita
02.12.2016
10:31:38
а ты докажи)

определения mvc нет, поэтому и любой спор - ниочем) также как либа/фреймворк

Alexey
02.12.2016
10:32:37
а ты все равно его не знаешь

Nikita
02.12.2016
10:32:49
у каждого свое?)

Alexey
02.12.2016
10:32:56
именно

Nikita
02.12.2016
10:33:33
во, прям в доки редакса пихнуть можно)

Стас Щетинников
02.12.2016
10:33:43
у каждого свое?)
есть классическое определение, можешь у фаулера почитать. А то, что у каждого долбоеба есть свое представление о жизни - всем, конечно, насрать )

Alexey
02.12.2016
10:34:03
а пассивная модель?

Сергей
02.12.2016
10:34:19
вот самый чистый

Стас Щетинников
02.12.2016
10:34:49
http://martinfowler.com/eaaDev/uiArchs.html - не благодарите

Alexander
02.12.2016
10:35:05
Ща все пойдут гуглить кто первым описал MVC :-)

Nikita
02.12.2016
10:35:05
https://habrahabr.ru/company/mobileup/blog/313538/

Google
Стас Щетинников
02.12.2016
10:35:06
фаулер чтоли придумал mvc?
нет, он лишь описал

Сергей
02.12.2016
10:35:16
ладно

Nikita
02.12.2016
10:35:22
n4nn31355
02.12.2016
10:35:30
mvc на реакте это плохая затея
да вопрос не в mvc, я просто пока успел только своим велосипедом для роутинга попользоваться, а тут вдруг наткнулся, что без подключения чего либо есть Router в коде и стало интересно откуда ноги растут

Alexey
02.12.2016
10:35:36
вот самый чистый
mvc с пассивной моделью тоже mvc

Admin
ERROR: S client not available

Сергей
02.12.2016
10:36:17
таки я не спорю))

George
02.12.2016
10:36:31
Добрый день. Я новичок в react Есть вопрос по поводу обновления state для reducer'a. У меня есть initial state такого вида const INITIAL_STATE = { items: {}, error:null, loading: true }; const goodsReducer = function(state = INITIAL_STATE, action) { switch(action.type) { case types.GET_GOODS: return { ...state, loading: true }; case types.GET_GOODS_SUCCESS: return { ...state, items: action.payload, loading: false }; case types.GET_GOODS_FAILURE: return { ...state, error:action.payload, loading: false }; case types.GET_GOODS_ITEM: return { ...state, loading: true }; case types.GET_GOODS_ITEM_SUCCESS: return { ...state, items: action.payload, loading: false }; case types.GET_GOODS_ITEM_FAILURE: return { ...state, error:action.payload, loading: false }; default: return state; } } Прикрепил скриншот с загруженными данными в State У меня есть операции CRUD. Я использую единственный state для всех видов операций. State у меня прошел нормализацию при помощи normalizr. Благодаря тому что данные нормализованы, я могу обращаться к нужному Goods по id. У меня два вопроса: Первый: У меня не верно обновляется state когда я получаю один единственный goods по id - операция READ Вот этот момент case types.GET_GOODS_ITEM_SUCCESS: return { ...state, items: action.payload, loading: false }; Я ожидаю что полученный items, должен объединиться с предыдущем state, вместо этого в state находить только что поступившей объект. Старые данные затираются, объединения старого state и с полученными данными не происходит. Возможно это из-за того что объект items.result содержит массив? Пробывал использовать библиотеку seamless-immutable - тоже самое. Второй: Как лучше организовать работу при запросе данных с сервера? Т.е. - я хожу по следующим страницам в браузере. /goods/ /goods/:id И каждый раз я отправляю get запрос на сервер, даже если данные уже содержатся в state, так как загружаю данные когда компонент монтируется componentWillMount() . Как этот момент организовать - делать проверку: если есть данные в state, то не нужно отправлять запрос на сервер?

Сергей
02.12.2016
10:36:34
но на только реакте строить mvc Это немного странно) Не думаешь?

Nikita
02.12.2016
10:37:07
нормас

Alexey
02.12.2016
10:37:10
нормально будет работать

выглядеть точно будет лучше чем ваше легаси на редаксе

Nikita
02.12.2016
10:38:12
конечно, setState рулит!

a
02.12.2016
10:38:25
https://blog.talkjs.com/how-react-brought-model-view-controller-back-to-the-masses-4f3caf3a3f2f#.7firqp6uv

Nikita
02.12.2016
10:38:33
для чего еще придумали componentDidMount, как не для ajax запросов?

Сергей
02.12.2016
10:38:34
а троллинг)

Nikita
02.12.2016
10:40:49
Добрый день. Я новичок в react Есть вопрос по поводу обновления state для reducer'a. У меня есть initial state такого вида const INITIAL_STATE = { items: {}, error:null, loading: true }; const goodsReducer = function(state = INITIAL_STATE, action) { switch(action.type) { case types.GET_GOODS: return { ...state, loading: true }; case types.GET_GOODS_SUCCESS: return { ...state, items: action.payload, loading: false }; case types.GET_GOODS_FAILURE: return { ...state, error:action.payload, loading: false }; case types.GET_GOODS_ITEM: return { ...state, loading: true }; case types.GET_GOODS_ITEM_SUCCESS: return { ...state, items: action.payload, loading: false }; case types.GET_GOODS_ITEM_FAILURE: return { ...state, error:action.payload, loading: false }; default: return state; } } Прикрепил скриншот с загруженными данными в State У меня есть операции CRUD. Я использую единственный state для всех видов операций. State у меня прошел нормализацию при помощи normalizr. Благодаря тому что данные нормализованы, я могу обращаться к нужному Goods по id. У меня два вопроса: Первый: У меня не верно обновляется state когда я получаю один единственный goods по id - операция READ Вот этот момент case types.GET_GOODS_ITEM_SUCCESS: return { ...state, items: action.payload, loading: false }; Я ожидаю что полученный items, должен объединиться с предыдущем state, вместо этого в state находить только что поступившей объект. Старые данные затираются, объединения старого state и с полученными данными не происходит. Возможно это из-за того что объект items.result содержит массив? Пробывал использовать библиотеку seamless-immutable - тоже самое. Второй: Как лучше организовать работу при запросе данных с сервера? Т.е. - я хожу по следующим страницам в браузере. /goods/ /goods/:id И каждый раз я отправляю get запрос на сервер, даже если данные уже содержатся в state, так как загружаю данные когда компонент монтируется componentWillMount() . Как этот момент организовать - делать проверку: если есть данные в state, то не нужно отправлять запрос на сервер?
на первый: return { ...state, items: action.payload, loading: false }; распиши по отдельности то что ты хочеш обновить var r = {} r.loading = false ... и так далее скорее всего найдеш ошибку между тем как ты думаеш это работает и как на самом деле

Eugene
02.12.2016
11:01:11
Всем привет, подскажите плз. Допустим, у меня есть компонент MyInput, состоящий из input. Как мне получить из компонента App value компонента MyInput с помощью ref?

Google
Nikita
02.12.2016
11:08:04
никак, тебе не должно такого хотеться

Sanjar
02.12.2016
11:08:35
никак, тебе не должно такого хотеться
Его вкусы могут быть специфичны...

Eugene
02.12.2016
11:08:53
Есть такой способ this.refs.username.refs.input.value

Но как-то длинно

Nikita
02.12.2016
11:08:59
окей, прокинуть ref до нужного компонента)

Eugene
02.12.2016
11:09:16
А как тогда работать?) Через handleChange?

⭐️Alexandra
02.12.2016
11:09:17
Есть такой способ this.refs.username.refs.input.value
За такое сразу антирекомендацию работодателям

Brs
02.12.2016
11:09:27
string ref - deprecated если что

Nikita
02.12.2016
11:09:42
За такое сразу антирекомендацию работодателям
да норм, потом отрефакторим. надо же за что-то деньги получать?

KlonD90
02.12.2016
11:09:54
string ref - deprecated если что
лол что ( а как работать с домом? (

Nikita
02.12.2016
11:09:59
string ref - deprecated если что
еще нет, если что

Eugene
02.12.2016
11:10:02
да
Но тогда же компонент перерисовывается, не? Разве это не плохо?

Brs
02.12.2016
11:10:15
from
02.12.2016
11:10:25
По-моему компоненты типа MyInput в идеале должны иметь минимально отличимый api от input компонента

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