
Pavel
30.11.2016
14:41:15
чтобы потом вот так сделать Promise.all([a1(), a(2)].map(dispatch))

Valia
30.11.2016
14:41:27
хак был примерно такой – сделать контейнер, который получает только количество точек и исходя из этого создает определенное количество контейнеров с лимитами (от и до) а в последний контейнер передается что-то типа флага realtime по которому он обновляется раз в 10 секунд
вообще забыл упомянуть, визуализация это что-то вроде сонограммы, где точки появляются только с одной стороны графика

Google

Brs
30.11.2016
14:46:00
он у тебя будет каждый раз песоздаваться целиком, ты упоминал про отрисовку за 30мс

Valia
30.11.2016
14:46:00
да, отрисовка 30мс, но Scripting 1400мс

Vitaliy
30.11.2016
14:52:03

Vladimir
30.11.2016
15:07:18

Pavel
30.11.2016
15:08:06
вопрос в том как диспачнуть последовательно из класса компонента несколько экшенов

Vladimir
30.11.2016
15:08:51
руками? простите

Brs
30.11.2016
15:09:18
сделать экшн, который последовательно диспатчит несколько других экшнов?

Dmitry
30.11.2016
15:09:57
Ну почти сага)

Pavel
30.11.2016
15:10:55
я вот и думаю что можно сагу заюзать
параллельно с redux-thunk

Pavel
30.11.2016
15:11:21
наркоманы
сага ради саги ммм

Google

Pavel
30.11.2016
15:12:53

Aleh
30.11.2016
15:14:06
сагу заюзать о.о
для того чтобы 3 экшена диспатчнуть
норм
реселект юзануть, чтобы массив из стейта вывести

Vladimir
30.11.2016
15:15:54
оверинжинирить мы не перестанем

Evgeny
30.11.2016
15:17:12
Как сделать а/б тестирование в реакте, аааааа

Vladimir
30.11.2016
15:17:22
так же как и без реакта

Pavel
30.11.2016
15:17:44

Brs
30.11.2016
15:17:48
{ a === true ? <A /> : <B />}

Evgeny
30.11.2016
15:18:33

Vladimir
30.11.2016
15:18:41
да-да

Evgeny
30.11.2016
15:18:43
optimizely дом ебёт, также как и vwo
У обоих этих ебучих сервисов нет нормального джс апи

Vladimir
30.11.2016
15:23:15
со сторонними сервисами всегда так
пиши руками
это ведь не так сложно

Evgeny
30.11.2016
15:28:04
Что писать руками?
Как мне распределить эксперимент на 50% посетителей?

Valentin
30.11.2016
15:28:24
Нодочкой)

Google

Valentin
30.11.2016
15:28:39
У нас на самом деле точно такая же проблема

Vladimir
30.11.2016
15:28:54
не обязательно нодой

Brs
30.11.2016
15:29:07
мы по userId делили
но это если сервис залогиновый

Vladimir
30.11.2016
15:30:27
If(new Random(0,1).Next()==1)
Return A.
Else Return B

Vladimir
30.11.2016
15:30:47
смотришь аб-куку, если там нет кидаешь честную монетку на старте приложения, пишешь результат в куку.
в зависимости от результата, рендеришь по разному
в аналитике создаёшь эксперимет/фактор
при ините аналитики указываешь в какую ветку эксперимента попал пользователь

Evgeny
30.11.2016
15:32:33
Как мне распределить эксперимент на 50% посетителей?

Vladimir
30.11.2016
15:32:34
look ma', no 3rd party services

Valentin
30.11.2016
15:32:49
Адблок какой-нибудь пропустит?

Vladimir
30.11.2016
15:33:00
честный рандом от нуля до ста

Vladimir
30.11.2016
15:33:16
первая половина одна ветка, вторая — другая

Evgeny
30.11.2016
15:33:26
Где я возьму статистику по посетителям?

Vladimir
30.11.2016
15:33:28
в аналитике
в аналитике создаёшь эксперимет/фактор
при ините аналитики указываешь в какую ветку эксперимента попал пользователь

Evgeny
30.11.2016
15:34:17
И у меня из-за честного рандома может быть перекос в один из вариантов
Потому что честный рандом != 50% аудитории

Google

Vladimir
30.11.2016
16:10:36
а оно и нужно для чистоты эксперимента
а нормальное распределение и есть 50%
если рандом честный
или хотябы относительно честный
ну и выборка нужна достаточная
но это просто реквайрмент аб-тестирования

Admin
ERROR: S client not available

Defiancefew
30.11.2016
17:48:52
а кто нибудь пробовал подружить jest с webpack provide plugin?

Никита
30.11.2016
18:14:40
Всем привет!
Как проще записать такой свитч? Когда имена кейса и поля стейта совпадают
handleChange(e) {
switch (e.target.getAttribute('name')) {
case 'name':
this.setState({name: e.target.value});
break;
case 'email':
this.setState({email: e.target.value});
break;
case 'message':
this.setState({message: e.target.value});
break;
default:
}
}

Evgeny
30.11.2016
18:15:34
setState({ [e.target.getAttribute('name')]: value })

Никита
30.11.2016
18:16:11

Vladimir
30.11.2016
18:16:18
только это валидируйте

Никита
30.11.2016
18:16:49

Vladimir
30.11.2016
18:17:18
а то в state попадёт или плохое или undefined

Никита
30.11.2016
18:18:46
а можно ещё как то отправить func(this.state) чтобы state ушёл не одним объектом, а отдельными полями?
const {name, email, message} = this.state грубо говоря, но в аргументах функции?

Evgeny
30.11.2016
18:19:57
const data = { name, email, message }
this.setState(data)

Никита
30.11.2016
18:21:22
мне поля стейта нужно отправить в функцию из пропсов.
const {name, email, message} = this.state;
this.props.funciya_iz_propsov(name, email, message);
вот это можно покороче записать?:)

Google

Art
30.11.2016
18:22:09
Куда уж еще короче-то?

Evgeny
30.11.2016
18:24:27
Перепиши функцию, чтобы объект принимала
%)

Art
30.11.2016
18:26:35
({x, y, z} = {x: 'x', y: 'y', z: 'z', k: 'k'} && {x, y, z}) лол

Pavel
30.11.2016
18:32:14
ребят а пуш в browserhistory в экшене фейл?)

Petr
30.11.2016
18:41:30
Нет , не фейл

Lend
30.11.2016
19:00:48
кто-то пользуется happypack? что-то поставил его себе, а сборка стала на 5 секунд медленее и количество тредов никак не влияет

Vladimir
30.11.2016
19:06:28

Lend
30.11.2016
19:20:55
чет ничего интересного не нашел

Vladimir
30.11.2016
19:21:35
создай минимальный тесткейс репо где это можно воспроизвести
и открывай ишью

Lend
30.11.2016
19:22:51
линукс

Vladimir
30.11.2016
19:22:58
окай

Lend
30.11.2016
19:23:17

code4aman
30.11.2016
19:35:54
Не знал что так можно ?
const Tag = cond ? "textarea" : "input";
const input = <Tag {...} />

Denis
30.11.2016
19:36:12
Как понятней?
1.
const { location: { pathname, query } } = payload;
2.
const { location } = payload;
const { pathname, query } = location;

Aleh
30.11.2016
19:36:17
теперь знаешь)

Evgeny
30.11.2016
19:36:36
2