@react_js

Страница 2199 из 5115
Andrey
25.09.2017
17:53:17
А на "почему?" отвечают, что варнинг вываливается.

Andrey
25.09.2017
17:53:48
Дмитрий
25.09.2017
17:54:01
Google
Stepan
25.09.2017
17:54:09
Просто правда на анмаунт пофиг, но все топят за запросы в редаксе.
Ну потому что логику выносишь отдельно. Потом у тебя ещё один компонент будет делать то же самое, будешь копипастить?

Дмитрий
25.09.2017
17:54:33
Alexander
25.09.2017
17:54:48
Andrey
25.09.2017
17:55:04
Ок, спасибо за ответы.

Alexander
25.09.2017
17:55:27
Вот логику ещё понял. Экшены для этого контейнера коннектятся в этом контейнере. А вот насчёт копипаста не понял

Artsiom
25.09.2017
17:56:41
кейс: - логин кнопка отправляет запрос (только последний, отправляет сразу) - логаут отменяет запрос могут быть в разных частях посмотри https://redux-saga.js.org/docs/recipes/ как разрулить таоке внутри компонентов (опять, могут быть в разных частях приложения)

Alexander
25.09.2017
17:56:50
Дважды данные тянуть и всё такое.
То есть при каждом вызове connect(state => state)(Container) он будет перезаписывать уже имеющиеся, а при mapstatetoprops просто добавляться в имеющиеся?

Artsiom
25.09.2017
17:58:29
То есть при каждом вызове connect(state => state)(Container) он будет перезаписывать уже имеющиеся, а при mapstatetoprops просто добавляться в имеющиеся?
тут больше логика создания "умных" компонентов: которые знают ЧТО делают тупые, но ни как они выглядят передавая стейт - тупой сам решает как ему работать

Andrey
25.09.2017
17:58:37
Проще написать небольшой класс, который будет этим заниматься.

Google
Andrey
25.09.2017
17:58:56
Или у редакса есть огромное преимущество по сравнению с сервисами?

Потому что у сервисов хотя бы есть нормальная типизация.

Artsiom
25.09.2017
18:00:30
Или у редакса есть огромное преимущество по сравнению с сервисами?
когда кода становится достаточно, чтобы стрелять по ногам - да, есть преимущества

Andrey
25.09.2017
18:01:02
когда кода становится достаточно, чтобы стрелять по ногам - да, есть преимущества
Можешь конкретизировать? А то для меня как-то не очевидно.

Artsiom
25.09.2017
18:01:48
Можешь конкретизировать? А то для меня как-то не очевидно.
а теперь представь, что сервисы должны между собой общаться...

Artsiom
25.09.2017
18:02:55
Медиатор паттерн знаешь?

там базовый пример с самолетами и диспетчерской вышкой

Andrey
25.09.2017
18:03:48
Нет, гляну. Спасибо.

Медиатор паттерн знаешь?
Т.е. это общепринятый стандарт на фронте, верно?

Artsiom
25.09.2017
18:07:10
Т.е. это общепринятый стандарт на фронте, верно?
просто хорошая практика, загугли "GOF patterns"

Amon Bower
25.09.2017
19:47:35


Есть что-то плохого в этом способе?

Я не хочу импортировать отдельно каждый компонент, а просто import { Button } from './components';

Andrey
25.09.2017
19:49:03
Это общепринятая практика.

Amon Bower
25.09.2017
19:49:39
отлично! спасиб.

Дмитрий
25.09.2017
19:50:14
Пока до динамических импортов не дойдёшь

Andrey
25.09.2017
19:51:12
Что ты под ними подразумеваешь?

kana
25.09.2017
19:53:20
я, чтобы править не двух местах, а только в одном, деаю чуть менее красиво export { default as Container } from "./Container" export { default as Input } from "./Input"

Дмитрий
25.09.2017
19:53:39
Что ты под ними подразумеваешь?
У этого термина нет разночтений

Google
Дмитрий
25.09.2017
19:53:44
import()

Eugeniy
25.09.2017
19:53:45
А ещё лучше от дефолтных импортов отказаться

Дмитрий
25.09.2017
19:53:55
Сфигаль?)

kana
25.09.2017
19:54:15
я отказываюсь потиху, они какие-то костыльные)

Eugeniy
25.09.2017
19:54:33
рефакторить много приходится с дефолтными

причем тут cjs

Дмитрий
25.09.2017
19:55:22
Нафиг

kana
25.09.2017
20:01:05
не сработает в его случае, у компонентов экспорт же дефолтный, откуда жс имя возьмет)

Ruslan ?
25.09.2017
20:01:58
Потому что то же самое получится почти) в конце файла пишешь export {myFunc1, myFunc2, ...}

Eugeniy
25.09.2017
20:02:31
Ruslan ?
25.09.2017
20:04:54
Ничего... мне просто больше нравится, когда экспорт в одном месте (сразу видно весь интерфейс)

Котяй Негодяй
25.09.2017
20:48:33


Irina
25.09.2017
21:03:52
А auth0 для авторизации вообще кто-нибудь использует или в этом нет особого смысла?

Дмитрий
25.09.2017
21:14:17
Сфигаль?)
Провоцируют неконсистентность в именовании дефолтных импортов. Приходится форсить одновременно и чтобы экспортируемая сущность имела имя, и чтобы при импорте это имя соответствовало Когда над проектом работает овер 50 человек, такие мелочи становятся важны

Есть и другие причины, но они больше субъективны

Max
25.09.2017
21:17:44
мы щас потихоньку выпиливаем дефолтные тоже

Google
Max
25.09.2017
21:18:04
главный минус - с ними рефакторинг не работает

kana
25.09.2017
21:18:20
в новном проекте использую только именованные. Помню, год назад фыркал на ангуляр, что там по стайлгайду не используют дефолтные

Max
25.09.2017
21:18:20
и вообще зачем 2 способа делать одно и то же

еще бы поменять наоборот синтаксис

я был бы доволен

from 'react' import { React }

теоретически можно бабелем решить

но IDE охуеет

Сергей
25.09.2017
21:22:57
import 'foo'

Тогда отличия начинаются

Max
25.09.2017
21:23:36
нормально

Сергей
25.09.2017
21:23:40
Не

Max
25.09.2017
21:23:40
в питоне так

у меня пусть лучше отличия иногда будут

чем всегда

Сергей
25.09.2017
21:24:03
import 'react' { React, Component }

kana
25.09.2017
21:24:08
import "react" (React, Component) як у хаскеле Все равно там {} нифига не деструктуринг

Дмитрий
25.09.2017
21:24:11
from 'react' import { React }
Это бы было идеально

Сергей
25.09.2017
21:24:33
import "react" (React, Component) як у хаскеле Все равно там {} нифига не деструктуринг
Вот в моем синтаксисе так. Правда я не знал, что в хаскеле так

Google
Max
25.09.2017
21:24:43
import 'foo'
что это должно делать?

Алексей
25.09.2017
21:25:05
так сделали чтобы было аналогично с присвоением переменных и Object Destruction .. let { a, b } = c; import { React } from 'react';

kana
25.09.2017
21:25:11
что это должно делать?
то же, что делает сейчас, выполняет сайд-эффект модуля, если он есть)

Max
25.09.2017
21:25:23
from 'react' import module

:)

Алексей
25.09.2017
21:25:25
(я покрайней мере такую аргументацию слышал)

Дмитрий
25.09.2017
21:25:26
Главное, чтобы сначала было написано, откуда, а потом уже - что Хоть автоподстановка была бы

kana
25.09.2017
21:25:32
import Data.Map (fromList)

Сергей
25.09.2017
21:25:35
что это должно делать?
Просто импортит Как require('foo')

Котяй Негодяй
25.09.2017
21:25:57
Так. Я правильно понимаю, что есть те, кто отказался от дефольтных импортов ПОЛНОСТЬЮ?

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