@react_js

Страница 1222 из 5115
Pavel
28.04.2017
08:38:42
И я пришел к построению инфраструктуры таким образом, что redux напрямую мы перестали использовать, он по сути стал external state для различных библиотек, таких, как apollo-client, redux-form и прочих.

То есть по сути мы не создаем reducer-ов вообще, что сильно ускоряет процесс разработки.

Но путь этот пройти желательно, иначе эволюции понимания всех тонкостей не произойдет.

Yuri
28.04.2017
08:41:33
Спасибо. Если кто ещё может что-то сказать, мне будет очень интересно послушать.

Google
Igor
28.04.2017
08:49:40
ребята, я вот тут озадачился одной проблемой. Всегда решал ее Абрамоугодно, но сегодня закрались подозрения. мапаю я пропсы: const mapStateToProps = state => ({ powerMeterDevices: getPMDevices(state.devices.byId), currentHomeId: state.homes.currentHomeId, powerMeterData: state.powerMeter }); getPMDevices - функция, которая фильтрует список и всегда возвращает новый массив, иммутабельность наше все получается из-за того, что всегда приходит новый массив, то компонент ререндерится. Вопрос, такое решается только через SCU или я что то делаю не так? или есть более правильный способ?

Yumi
28.04.2017
08:51:40
mapStateToProps - выборка со стейта, зачем там логика?

Igor
28.04.2017
08:53:19
mapStateToProps - выборка со стейта, зачем там логика?
я ж написал, Абрамоугодно... в туторах видел, в примерах живых, а вот теперь когда опыта подкопилось начал задаваться подобными вопросами

Igor
28.04.2017
08:59:16
Сохрани данные отдельно, а порядок сортировки — отдельно в сторе, тогда не придётся сортировать каждый раз)
сейчас буду что то подобное делать или фильтровать в компоненте или стор подшаманю

Igor
28.04.2017
09:36:27
Господа, что взять из CSS in JS для реализации простного функционала В пропсах приходит цвет и нужно расскрасить с ховерами и т.п.

Можно конечно и onMouseEnter повесить, но не хочется

Есть какая-то простая библиотека?

Max
28.04.2017
09:37:36
а чем ‘import “style.scss”’ не устраивает?

Igor
28.04.2017
09:38:07
Цвет в пропсах

Max
28.04.2017
09:38:25
а

Igor
28.04.2017
09:38:30
типа item.color

Max
28.04.2017
09:38:49
я react-jss взял

Google
Igor
28.04.2017
09:38:49
Если просто повесить, то понятно style={{color: this.props.color}}

А если ховер еще нужен, то тут уже пляски с бубном

Max
28.04.2017
09:39:06
вроде простая штука

но я не уверен что там есть динамическое изменение стилей

типа ховера

надо доку глянуть

Igor
28.04.2017
09:41:27
Попробую ее

Дмитрий
28.04.2017
09:46:54
В jss есть ховер

Max
28.04.2017
09:47:09
не

ховер то есть

Max
28.04.2017
09:47:17
а динамически поменять его? )

там же вроде он компилирует в цсс все

Дмитрий
28.04.2017
09:47:30
Ну так на лету же



Если теперь сделать инжект в компонент, то width — это соответствующий пропс компонента

Max
28.04.2017
09:48:24
о

збс

Igor
28.04.2017
09:54:25
{this.props.tags.map((item, index) => { const styles = { item: { fontWeight: 'bold', }, } const itemClass = cx({ newsFilterItem: true, newsFilterItemActive: item.tagSlug === this.props.current, [classes.item]: true, }) return ( <div key={item.id} className={itemClass} onClick={() => this.props.handleFilter(item.tagSlug)}> {item.tag} </div> ) })}

Расскажите, как заставить работать?

Google
Igor
28.04.2017
09:55:00
export default injectSheet(styles)(NewsFilter) етесственно

Сергей
28.04.2017
09:55:00
а что не работает

Denis
28.04.2017
09:55:13


Сергей
28.04.2017
09:55:31
кстати, писать newsFilterItem: true это же как-то тупо

Denis
28.04.2017
09:55:52
зачем константы внутри map

Сергей
28.04.2017
09:55:55
можно же просто cx('newsFilterItem', classes.item, { ....... })

Igor
28.04.2017
09:56:06
Можно, потом поправлю

Сергей
28.04.2017
09:56:39
@exdeniz а в чем проблема-то?

Igor
28.04.2017
09:57:35
Проблема, что мне надо в map отображать разные цвета

В том числе и для ховера

для это style={{}} не подходит

Сергей
28.04.2017
10:06:06
why?

Gleb
28.04.2017
10:17:40
Привет, подскажие пол jest пожалуйста, что в валидном тесте означает : `

Your test suite must contain at least one test.

Только не отвечайте переводом на русский

Max
28.04.2017
10:18:18
значит нет у тебя тестов )

может где-то синтаксис кривой

Gleb
28.04.2017
10:18:56
Потому что test("WTF???", () => { expect(3).toBe(3); }); Вернет тоже самое

Я закоментировал все moxios и прочие

только это сотавил

Google
Max
28.04.2017
10:19:34
может конфиг джеста кривой

Gleb
28.04.2017
10:19:35
сам файл с тестом он видит и запускает его

Max
28.04.2017
10:19:38
бабель не подсасывается

или еще что-то

Gleb
28.04.2017
10:19:55
Я могу запускать jest без конфига?

Судя по доке да

Max
28.04.2017
10:20:22
у меня была херня когда была опечатка в имени лоадера и он просто падал

Admin
ERROR: S client not available

Max
28.04.2017
10:20:26
на импорте цсс

вместо того чтобы сказать что лоадер не найден

Gleb
28.04.2017
10:20:55
бляха

и это решилось кофигом?

Max
28.04.2017
10:21:08
ну у меня в конфиге все

Gleb
28.04.2017
10:21:36
Скинь пожалуйста в лс, на скорую попробую с ним если все ок то значит в конфиге все же дело

Max
28.04.2017
10:21:39
кинул в личку

удали все что про TS

ненужно

Gleb
28.04.2017
10:23:42
jest —notify —config=config.json В результате то же самое(

вот гавнюк а этот джест

а что там с бабелем, они написали если у вас yarn забить на бабель

Google
Gleb
28.04.2017
10:33:11
Если по близости в закладках есть что нибудь про тестирование thunk?

? ethorz
28.04.2017
10:43:03


Pasha
28.04.2017
10:44:21
привет пипл! Посоветуйте инструмент для тестинга скриншотами, для компонентов

Artem
28.04.2017
10:45:02
Скриншотами?

Снэпшотами?

Artur
28.04.2017
10:45:31
у тебя в данном случае controlled input, так что либо делай на него хендлер и обновляет стейт при изменении, либо юзай uncontrolled controlled: https://facebook.github.io/react/docs/forms.html#controlled-components uncontrolled: https://facebook.github.io/react/docs/uncontrolled-components.html

Pasha
28.04.2017
10:45:50
смысл один) спс за поправку

Artem
28.04.2017
10:46:03
Jest норм

Pasha
28.04.2017
10:46:14
спс, ща покурим

Artur
28.04.2017
10:47:05
ты передаешь туда value, так что controlled. но можешь сделать его uncontrolled :)

? ethorz
28.04.2017
10:47:37
не, мне в итоге всё равно надо будет передать только по сабмиту

Pasha
28.04.2017
10:51:09
а не, все верно я сказал. Помню где-то видел что можно скриншотами. Если не совпадают кидает варнинг.

Ilya
28.04.2017
10:52:38
BackstopJS думаю попробовать

Но снепшоты и скриншоты тестируют разные вещи

Очевидно же

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