@react_js

Страница 463 из 5115
Семен
13.09.2016
03:03:15
Пацаны, чем формы валидируете?)

Сашка
13.09.2016
05:38:12
tcomb c flow-синтаксисом

Если валидация текстовых полей - то тупо по регекспу.

Google
Alexey
13.09.2016
06:40:57
«Based on set theory», — это сильно

Дмитрий
13.09.2016
06:54:08
Хм, а интересная штука

«Based on set theory», — это сильно
Ну set theory — это не rocket science)

Alexey
13.09.2016
06:56:11
ну так то да )

Дмитрий
13.09.2016
07:00:01
По сути это просто обозначает с понтом обставленную реализацию Dict, Union, Enum и прочего)

Max
13.09.2016
08:30:24
Ребят совет нужен. Рендерю компоненты исходя из данных массива, то есть мапаю и рендерю. В этом же главном компоненте есть функция с фетчем, которая прокидывается в каждый дочерний. Не пойму как мне прокинуть теперь ответ от сервера в нужный компонент.

Dmitry
13.09.2016
08:32:01
Колбэком или промис возвращай

Vladimir
13.09.2016
08:38:25
тогда каждому компоненту в пропсы придёт функция возвращающая промис, вот и значение

иначе я не понял твою проблему

Max
13.09.2016
08:39:17
фетч в отдельной функции. В дочерние компоненты рендерится коллбэк который вызывается при клике

Google
Max
13.09.2016
08:39:33
коллбэк на фетч естесна

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

Vladimir
13.09.2016
08:40:40
а почему компоненты сами по себе не могут фетчить?

Dmitry
13.09.2016
08:42:14
В родителе fetch = options => this.props.fetchData(options); <ListItem fetch={this.fetch} /> В дочернем fetch = () => this.props.fetch(itemSpecificOptions) .then(response => { /*do smt*/ });

Vladimir
13.09.2016
08:43:34
В родителе fetch = options => this.props.fetchData(options); <ListItem fetch={this.fetch} /> В дочернем fetch = () => this.props.fetch(itemSpecificOptions) .then(response => { /*do smt*/ });
вот хороший вариант того, как я вижу решение и не понимаю, @maxhoffman, в чём твоя проблема

Max
13.09.2016
08:48:20
сейчас попробую

Ҫѐҏӗѫӑ
13.09.2016
09:22:52
внезапно https://github.com/tc39/proposal-private-fields/issues/32#issuecomment-237122379

это ко вчерашнему babel-plugin-legacy-decorators ?

Andrey
13.09.2016
09:24:36
babel-plugin-legacy-symbol

Vladimir
13.09.2016
09:24:40
так

а почему слово private не конски?

private x;

ой там даже faq есть

Ҫѐҏӗѫӑ
13.09.2016
09:27:20
про это есть отдельная ишью

чот я дочитал и тоже за свап теперь

Safort
13.09.2016
09:35:49
внезапно https://github.com/tc39/proposal-private-fields/issues/32#issuecomment-237122379
Пока не читал подробностей, но выглядит как какая-то дичь.

Типа: - Посоны, мы тут подумали, давайте декораторы теперь # обозначать! - Зачем? - Прост))0)

Ҫѐҏӗѫӑ
13.09.2016
09:36:08
да нет, не прост

все очень логично

Google
Anton
13.09.2016
09:37:40
ну так объясни вкратце

Malgalad
13.09.2016
09:37:44
TLDR: чтобы когда ты пишешь this.field было понятно, field приватное или нет (ты не можешь написать "this.private field"), и чтобы не было коллизий, когда ты делаешь obj.field = a; а у него уже есть приватный field - но ты о нём не знал ибо он приватный.

^ к вопросу почему не private x;

Vladimir
13.09.2016
09:46:13
а вот ситуация я делаю class A{ db = null; } потом где-то в коде new A().db=new DB(); а потом я решаю такой, что это поле должно быть приватным и устанавливаться через сеттер setDb(). в случае с собакой я переименовываю это поле в @db, и код new A().db продолжает выполнятся без ошибки, но делает НЕ ТО. В случае с идентификатором private и тем же названием переменной, скрипт упадет намного раньше и сигнализирует об ошибке правильным способом.

вообще выйдет, что @a и a - это разные поля, это довольно error-prone.

German
13.09.2016
10:57:22
Ребят как правильно присвоить данные переменной что я замапил из массива? Object.keys(this.state.data).forEach(dataType => { this.state.data[dataType].map(dataItem => ( <div>{dataItem}</div> )); });

Malgalad
13.09.2016
11:08:53
скорее `Object.keys(data).map(type => data[type].map(item => ( <div>{item}</div> )) ).concat() `

forEach не возвращает ничего, а если его заменить на map, был бы массив массивов, так что надо ещё в конце concat.... или наоборот, [].concat(.../* code */). И да, нужен проп key.

Dmitry
13.09.2016
11:15:09
Шта? Если я правильно понял, и ты хочешь в хэше для каждого ключа превратить массив переменных (строк например) в массив дивов, то Object.keys(this.state.data).reduce((memo, dataType) => ({ ...memo, [dataType]: this.state.data[dataType].map(dataItem => <div>{dataItem}</div>) }), {});

German
13.09.2016
11:21:47
const renderData = () => { const data = Object.keys(this.state.data).map(dataType => ( this.state.data[dataType].map(dataItem => ( <div>{dataItem}</div> )) )); return data; };

вот так работает

Есть массив, в котором лежат объекты, ключи я не знаю. Мне нужно вытащить определенные данные из этих объектов. Получив в конце массив с html элементами с этими данными.

Vadim
13.09.2016
11:31:07
А с датой по митапу определились? Не могу найти нигде)

Anton
13.09.2016
11:32:09
Пожалуйста, подскажите, есть ли какие-то подходы к хранению данных в state, а именно к сопоставлению id, хранимого внутри объекта, с индексом объекта в массиве?

Anton
13.09.2016
11:39:33
hasOwnProperty не подходит?
В случае, если я храню id активного элемента, приходится перебирать массив до совпадения по id. Попадалось на глаза что-то вроде хранения дополнительного объекта, в котором ключи - id, значения - индексы соответствующих объектов. Вроде как для этого использовался инструмент какой-то. Не могу найти.

Max
13.09.2016
11:40:26
может normalizr?

Anton
13.09.2016
11:43:11
может normalizr?
Благодарю :)

Dmitriy
13.09.2016
12:23:49
кто знает, в ES собираются switch делать выражением?

Алексей
13.09.2016
12:26:23
Google
Dmitriy
13.09.2016
12:30:09
для удобства

Алексей
13.09.2016
12:30:42
Dmitriy
13.09.2016
12:32:51
например, в одном месте понадобилось сделать такое преобразование https://gist.github.com/dstarcev/e947a286188af341b5e1478c323090aa

пришлось его вынести в функцию

а мог бы написать const addressQuery = switch {...}

Anton
13.09.2016
12:35:46
{ foo: () => baar }[query]()

Malgalad
13.09.2016
12:37:03
https://github.com/hemanth/es-next#do-expressions тебя спасёт

Dmitriy
13.09.2016
12:37:42
спасибо

Admin
ERROR: S client not available

Владимир
13.09.2016
13:11:44
{ foo: () => baar }[query]()
так не будет работать

Anton
13.09.2016
13:14:08
так не будет работать
действительно

({ foo: () => 'bar' })[query]()

Владимир
13.09.2016
13:14:45
эээ, ты же правильно все написал

только если не будет свойства то будет undefined

который ты как функцию вызовешь

Anton
13.09.2016
13:15:16
аа, там переменную подставить надо, вспомнил

в общем, надо было в скобки обернуть объект

Aleksey
13.09.2016
14:37:48
Ребята, никого не бесит жира?

Ilya
13.09.2016
14:38:10
Джира не может не бесить.

Grigory
13.09.2016
14:38:26
Бесит абсолютно всех, но лучше ничего не придумали)

Google
Ilya
13.09.2016
14:38:38
Особенно бесит облачная жира.

Там адок полный.

Aleksey
13.09.2016
14:39:02
Меня бесит тем что если ты в jetbrains авторизован, то на сайте ты вылетаешь.

Привкус дерьма на языке уже достал.

А в остальном мне норм.

Ilya
13.09.2016
14:40:30
А причём тут jetbrains?

Атлассиан что, убивает конкрутентов?

Aleksey
13.09.2016
14:41:02
Под jetbrains имею ввиду любую IDE от них, например webstorm.

Авторизуешься в жире в вебшторме и все, привет, вылет из браузера.

Brs
13.09.2016
14:43:18
у меня норм работает

может у вас админы накрутили чего-то не того?

Aleksey
13.09.2016
14:44:31
Это облачная жира, там нечего крутить, я узнавал.

Brs
13.09.2016
14:45:20
ааа, у нас безоблачная

хотя в прошлом году в облачной все норм работало

Aleksey
13.09.2016
14:48:01
В итоге я перелогиниваюсь в ней постоянно.

Dmitry
13.09.2016
14:48:38
Почувствовал себя счастливым, даже не знал, что жира с вебштормом вместе умеют работать)

Dmitry
13.09.2016
14:49:39
Наверное, но мне немного страшно, зная то, сколько у нас в жире напилено всего :)

Aleksey
13.09.2016
14:49:53
Не понимаю твои опасения.

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