
Alexey
09.12.2016
09:34:12
Всем привет, подскажите, я могу использовать action редюкса не в компонентах?

Vladimir
09.12.2016
09:34:27
да
store.dispatch({type: ‘ACTION_TYPE’, payload: 1})
в любом месте, где доступен стор

Google

Dmitry
09.12.2016
09:36:36
А RR4 готов для продакшена?

Alexey
09.12.2016
09:37:46

a
09.12.2016
09:46:07
имеет ли смысл реализовывать респонсив UI без media queries в реакте?
допустим чекать window.innerWidth и прописывать нужные стили в render()

vitaliy
09.12.2016
09:49:12

Nikita
09.12.2016
09:56:35

a
09.12.2016
09:57:31
ну у меня все стили радикально инлайн

Kirill
09.12.2016
09:58:01

Anastasia
09.12.2016
09:58:09

Darwin
09.12.2016
10:39:17

a
09.12.2016
10:43:01
>лайбрари в 50 строк

Vladimir
09.12.2016
10:44:05

a
09.12.2016
10:44:50
ушел, проверяй

Google

Dmitry
09.12.2016
11:05:01
у кого была такая проблема?
пустой react-native проект

Дмитрий
09.12.2016
11:07:39

Dmitry
09.12.2016
11:09:57
Спасибо

Evgeny
09.12.2016
11:12:38
Лайфхак: в редакс-логгере можно выделять серым то, что хочешь задепрекейтить
Сильно помогает потом при рефакторинге

Dreamerinnoise
09.12.2016
11:15:30
Вопрос про сервер сайд: Когда вёрстка уже прилетела с сервера и реакт на клиенте начинает маунт, он полностью делает перерендр?

Aleksei
09.12.2016
11:16:55

Kirill
09.12.2016
11:17:18

Aleksei
09.12.2016
11:17:39

Kirill
09.12.2016
11:18:07
и это вполне логично

Vladimir
09.12.2016
11:19:06

Aleksei
09.12.2016
11:19:15
А потом уже сравнивать с реальным

Nikita
09.12.2016
11:20:12
лол, можно забавное поведение получить, если использовать arrow-function в классах:
class Module extends PureComponent {
handleChange = () => {
console.debug('change', arguments);
};
}
arguments - всегда будут аргументами конструктора)
а что в пропосале на эту тему говорится?)

Aleh
09.12.2016
11:21:04

Vladimir
09.12.2016
11:21:04
arrow нельзя использовать как методы класса

Google

Vladimir
09.12.2016
11:21:31
почему нельзя?

Dreamerinnoise
09.12.2016
11:21:37
Я заходил на аирбнб вчера

Vladimir
09.12.2016
11:21:39
по спеке

Dreamerinnoise
09.12.2016
11:21:42
просто поглазеть как работает
там полностью заново рендер делался, как я понял

Aleksei
09.12.2016
11:21:55

Nikita
09.12.2016
11:21:57

Vladimir
09.12.2016
11:22:10
ну вот код выше работает

Nikita
09.12.2016
11:22:17

Dreamerinnoise
09.12.2016
11:22:38

Aleh
09.12.2016
11:23:49

Nikita
09.12.2016
11:24:16

Aleksei
09.12.2016
11:25:22
Я не понимаю почему он не прав-то. Обычное свойство класса. А свойство может хранить хоть строку, хоть функцию, хоть папу римского в кубе

Nikita
09.12.2016
11:28:17
все зависит от пропосала. какой контекст должен быть у arrow-функции
(() => {
console.debug(arguments);
})();
а таким макаром можно получить кишки вебпака в модуле)

Aleh
09.12.2016
11:29:38
хотя да, running execution context к class body, а class body к конструктору. Короче видимо да\

Nikita
09.12.2016
11:30:19

Aleh
09.12.2016
11:33:32
хотя можно и просто arguments же)
https://babeljs.io/repl/#?babili=false&evaluate=true&lineWrap=true&presets=es2015%2Ces2015-loose%2Cstage-2%2Cstage-3&experimental=false&loose=false&spec=true&code=let%20b%20%3D%201%3B%0Aclass%20A%20%7B%0A%20%20m%20%3D%20()%20%3D%3E%20%7B%0A%20%20%20%20console.log(arguments)%3B%0A%20%20%20%20return%20b%3B%0A%20%20%7D%0A%20%20constructor(a%2C%20b)%20%7B%0A%20%20%20%20this.m()%0A%20%20%7D%0A%7D%0A%0Anew%20A(1%2C%202)&playground=true
удаляя return получается разное поведение

Дмитрий
09.12.2016
11:35:54

Google

Дмитрий
09.12.2016
11:36:19
arguments это бомба замедленного действия

Nikita
09.12.2016
11:36:50
надо уметь с ними работать вот и все)

Дмитрий
09.12.2016
11:37:04
Не надо с ними работать, вот и всё

Nikita
09.12.2016
11:37:20
ты не должен этого хотеть?) окай

Ilya
09.12.2016
11:37:40
это почти как манки патчинг

Дмитрий
09.12.2016
11:37:42
TC39 дали вам rest/spread, а вы arguments юзаете ?

Nikita
09.12.2016
11:38:44
ну и что?)
нам еще arrow-functions дали, ими тоже везде пользоваться?

Admin
ERROR: S client not available

Nikita
09.12.2016
11:40:00
или еще более безумное - бэктики. все строки бэктиками!

Dreamerinnoise
09.12.2016
11:41:34

Дмитрий
09.12.2016
11:41:56
ну и что?)
Назови мне хотя бы одну причину пользоваться легаси неудобоваримого недо-массиво формата, больно бьющую по производительности, когда существует гораздо более простая, удобная и читаемая вещь?)

Nikita
09.12.2016
11:42:31

Дмитрий
09.12.2016
11:42:38

Nikita
09.12.2016
11:43:40
это все не значит, что у меня повсеместно arguments используется, просто я не понимаю истерии)

Дмитрий
09.12.2016
11:44:29
arguments бьёт по производительности

Evgeny
09.12.2016
11:44:42

Nikita
09.12.2016
11:44:44
не бьет

Google

Дмитрий
09.12.2016
11:44:46
Можно играть в сапёра

Evgeny
09.12.2016
11:44:56
Все строки бэктиками это оч удобно

Дмитрий
09.12.2016
11:45:00
А можно работать)

Evgeny
09.12.2016
11:45:09
Не нужно ебаться с '' → ``, когда нужно вставить переменную

Aleh
09.12.2016
11:45:29
cs'`

Nikita
09.12.2016
11:45:41

Evgeny
09.12.2016
11:45:54
Ну и по всему проекту один стиль принят, бэктики уже на автомате ставишь, когда строку делаешь

Nikita
09.12.2016
11:46:11
окай, почти никогда) или оно сразу надо

Дмитрий
09.12.2016
11:46:14
не бьет
There are numerous ways to use arguments in a way that causes the function to be unoptimizable. One must be extremely careful when using arguments
extremely careful
Нафиг надо)

Adel
09.12.2016
11:46:39
блин это фронтенд

Nikita
09.12.2016
11:46:42

Adel
09.12.2016
11:46:48
всегда надо быть extremely careful

Дмитрий
09.12.2016
11:47:01

Nikita
09.12.2016
11:47:07
а еще throw бьет по производительности, ошибки возвращать, return [err, result]?)

Alexey
09.12.2016
11:47:23
go style

Дмитрий
09.12.2016
11:47:35

Nikita
09.12.2016
11:47:47
Пруфы привёл ващет
в общем там описано, как не стрелять себе в ногу используя arguments. Я помню как с ними работать, так что ничего плохого не виду

Iaroslav ¯\_(ツ)_/¯
09.12.2016
11:47:50
- Работай над оптимизацией своего кода
- Нафиг надо!
(c) цитаты великих говнокодеров