@react_js

Страница 166 из 5115
JiSeven
06.06.2016
13:44:51
а не через connect(.....)(DumbComponent)

и все вроде-бы было хорошо, пока не пришло время тестов)

может как-то можно достать компонент-то из коннекта?

не прибегая к ножницам)

Google
Mikhail
06.06.2016
14:04:43
Dumb не должен быть связан с redux-store. Только контейнер, который через props передает уже для Dumbs

JiSeven
06.06.2016
14:09:56
чтобы не ходить туда сюда, у меня сделан контейнер как тут https://egghead.io/lessons/javascript-redux-fetching-data-on-route-change

hlomzik
06.06.2016
14:38:58
а можно как-то удобно подключать компоненты с путями вида Source/Source.jsx? я пока кладу в папку index.jsx module.exports = require(‘./Source.jsx’), но так себе путь

Andrey
06.06.2016
14:40:03
создавать в каждой такой папке package.json

Vladimir
06.06.2016
14:40:48
а кто-нить сталкивался с зависающим профайлером в хроме на маке?

hlomzik
06.06.2016
14:42:56
уж лучше index.jsx :)

Aleksey
06.06.2016
14:50:45
уж лучше index.jsx :)
https://github.com/kriasoft/react-starter-kit/blob/master/docs/react-style-guide.md#separate-folder-per-ui-component

from
06.06.2016
15:11:51
Либо действительно require('./components/Component/Component');

согласен
гхм, только index.js, нафига там jsx )

Ҫѐҏӗѫӑ
06.06.2016
15:13:45
вообще правильно бы писать jsx

потому что это не js

Google
from
06.06.2016
15:16:26
потому что это не js
не, то, что по-хорошему будет написано в index.js это именно js

т.е. что-то вида export default from './Component.js(x)';

webpack module resolve?
для каждого компонента?

Artur
06.06.2016
15:18:12
О, зачем?

from
06.06.2016
15:18:28
а как?

Anton
06.06.2016
15:18:37
просто для папки components

Artur
06.06.2016
15:19:57
Да хотя бы так

Просто ресолвятся файлы из сырсов, а ты пишешь пути от корня проекта.

В данном случае от src

т.е. что-то вида export default from './Component.js(x)';
А расширение вообще не нужно писать

from
06.06.2016
15:27:01
во-первых это не решает озвученный вопрос, во-вторых неявные пути хрень

Artur
06.06.2016
15:28:33
во-первых это не решает озвученный вопрос, во-вторых неявные пути хрень
Почему не решает? Как раз решает. Человек не хочет писать dotslash, хотя все пишут и ничего. Вот решение, пожалуйста, не пишите, заодно и можете использовать пути относительные от корня проекта.

А то как в сказке, и рыбку съесть и... ну вы поняли)

Ivan
06.06.2016
15:29:24
Парни, такой вопрос. У меня заимпорчены стили в реакт компоненты и мока вдруг решила их тестировать и естественно все валится. Как избежать этого?

from
06.06.2016
15:29:53
Не понял
https://github.com/kriasoft/react-starter-kit/blob/master/docs/react-style-guide.md#separate-folder-per-ui-component

Artur
06.06.2016
15:29:57
Ну и не /component/name, а component/name

Аааа, так там же вон и package.json прописан. В нем тогда main пиши и все. Или тоже не хочет?

Google
from
06.06.2016
15:31:35
https://github.com/kriasoft/react-starter-kit/pull/197

Artur
06.06.2016
15:32:54
Ну логично, можно было бы index.js класть в папку и это решило бы проблему с "нехочупэкаджджэйсон"

from
06.06.2016
15:33:30
так всё и сказали уже )

Artur
06.06.2016
15:34:27
Т.е. solved?

Andrey
06.06.2016
15:35:07
можно и в принципе плагин для вебпака написать, что бы он пытался получить файл, с названием папки )

from
06.06.2016
15:35:09
ну как сказать solved, вопрос предпочтений же

Andrey
06.06.2016
15:35:19
по моему вполне реально написать )

hlomzik
06.06.2016
15:37:42
Т.е. solved?
не хочу ни index.js(x), ни package.json, потому что лишние файлы. но уже решил, что буду package.json использовать. раз уж у меня целая папка с компонентом и ресурсами, то можно и такую роскошь позволить

hlomzik
06.06.2016
15:40:04
а такой резолв через package.json — это чья вообще ответственность? где описано? если это просто вебпак так умеет — отстой. если нода — уже лучше

Anton
06.06.2016
15:40:40
это CommonJS packages 1.1

Собственно вот спека

http://wiki.commonjs.org/wiki/Packages/1.1

Artur
06.06.2016
15:58:40
А если не секрет, как бы ты сам устроил загрузку компонента, если без package.json и без index.js(x)?

hlomzik
06.06.2016
15:59:53
как выше и писали, плагин вебпака, который ищет component.js, component.jsx, component/index.jsx, component/component.jsx

сейчас и так много вариантов перебирается, это был бы еще +1. но вариант с package.json и правда идеологически правильнее

Google
Artur
06.06.2016
16:44:48
Во во

Dmitry
06.06.2016
20:33:28
У инлайн стилей в реакте есть какие-то особенности? Обновляю стейте компонента {this.state.scroll} - обновляется нормально style={{transform: translateY(${-this.state.scroll})}} - остается изначальным

С другими свойствами вроде работало нормально

Сорян, px забыл :(

Кисик
06.06.2016
23:02:39
Пасаны, что-то я щас с ума совсем сойду: чому валиться может?

Admin
ERROR: S client not available

Nikita
06.06.2016
23:03:47
babel-preset-stage-1

Кисик
06.06.2016
23:14:59
thx ?

Denis
06.06.2016
23:15:32
o_O

Мы уже обсуждали, но суть такая - для методов лучше использовать не arrow funcs, а прямые функции: class MyComponent { handleSelectClick() { this.setState({ isSelected: true }) } render() { const { isSelected } = this.state return ( <div> {isSelected && ( <b>Already selected</b> )} <button onClick={() => this.handleSelectClick()}> {isSelected ? 'Select again' : 'Select'} </button> </div> ) } }

Кисик
06.06.2016
23:27:20
Понял, спасибо

blkmrkt
06.06.2016
23:39:48
infernojs уже кто-то пробовал?

фух, с npm-shrinkwrap одни только проблемы

Denis
07.06.2016
03:56:27
)

Denis
07.06.2016
06:24:50
Норм, но не для быстрого прототипирования. Основной аргумент был в том, что каждый раз не создается функция в отчими от arrow func, но он исчезает если заглянуть в профайлер;)

anoru
07.06.2016
06:25:40
Я помню аргументов против arrow func было отсутствие stacktrace, что оказалось впоследствие ошибкой и многие

это подтвердили

hlomzik
07.06.2016
06:26:04
профайлер какой? обычный devtools? react?

Google
Denis
07.06.2016
06:26:10
DT

localvoid
07.06.2016
06:26:17
потом ещё при диффе указатель на функцию не совпадает

Denis
07.06.2016
06:26:43
Да?

Вот кстати интересный поинт, надо проверить

localvoid
07.06.2016
06:27:30
ну так она каждый раз новая создаётся

Andrey
07.06.2016
06:28:02
Конечно, реактовский perfs ругается на это и по этому появилось правило no bind, который запрещает и такой вид

По этому самый правильный это биндить в конструкторе

Denis
07.06.2016
06:30:31
ну так она каждый раз новая создаётся
Но ты же все равно shouldComponentUpdate используешь ;)

В случае с arrow func быстрее прототипировать

anoru
07.06.2016
06:32:16
С arrow func выйдет даже быстрее печатать, чем каждый раз снова создавать функцию, ну, а плюсы и минусы уже в прошлом обсудили)

localvoid
07.06.2016
06:32:35
Но ты же все равно shouldComponentUpdate используешь ;)
но когда sCU возвращает false, приходится биндить новые эвент хандлеры )

hlomzik
07.06.2016
06:34:13
А есть ссылка под рукой на правило в ESLint?
https://github.com/yannickcr/eslint-plugin-react/blob/master/docs/rules/jsx-no-bind.md

localvoid
07.06.2016
06:34:46
я вообще против всех этих микрооптимизаций в большинстве проектов) Ничего не будет тормозить если не писать совсем уж говнокод

Andrey
07.06.2016
06:34:47
https://github.com/yannickcr/eslint-plugin-react/blob/master/docs/rules/jsx-no-bind.md

Denis
07.06.2016
06:34:49

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