Arthur
Короче никак, как я понимаю
Arthur
Это конечно пипец пичаль
Bogdan
useMemo еще не совсем понял
ну вроде как не вызовет перерендер с теми же значениями
Bogdan
да
вплане на бою относительно недавно
Arthur
Хотяяяя
Arthur
Я тут подумал ... с почти мввм это в целом решается всё
artalar
Есть значение в контексте. Значение используется в куче функций (эффекты в основном) Хотелось бы как-то вынести его, чтобы убрать пробросы и коннекты
импорт?) Смотри, на чем можно построить DI? - Наследование - Функциональная композиция - … а на чем работают хуки и мобыкс?? Я не знаю как это правильно называется, я это называю call stack DI, этакая разновидность функциональной композиции - вроде аргументы не пробрасываются, но тот кто делает вызов функции может менять ее поведение, потому что она использует что-то, что можно поменять до вызова этой самой функции
Arthur
Только дополнительно оборачивать придётся
Arthur
artalar
Не хоком, а простым HOFом
Arthur
я набросал версию, но пока без async импортов, т.к. там для коллекта чанков нужно свой loadable писать
Victor
Слушайте Как быть если я в mStP из state в один из пропсов пропихивают объект? У меня из-за этого перерендеры, а свой sCU не охота описывать... Что по книжке надо делать в таком случае?
artalar
Т.е. почему бы не обернуть компонент в хай ордер фанктион и при ее вызове не определять поведение, а дочернуюю функцию вызывать и возвращать ее результат
Victor
нормализация
Сразу в стейте звонить такой объект?
artalar
Чего? Либо объект разбивать на отдельные пропсы, либо стор нормализовать, что бы сборка объекта не афектилась другими изменениями
Victor
Звонить-хранить
Victor
С могилы пишу
Victor
Похоже надо более конкретный пример объекта чтобы понять.
Arthur
Т.е. почему бы не обернуть компонент в хай ордер фанктион и при ее вызове не определять поведение, а дочернуюю функцию вызывать и возвращать ее результат
ну сейчас у меня вот так +- function injectStores(Component) { return function (factory) { function Injector(props) { const manager = useStoresManager(); const createdStore = factory(manager); const p = { ...props, ...createdStore }; return <Component {...p} manager={manager} />; } return Injector; }; }; и получается, я при коннекте определяю логику внедрения и выбора нужных сторов, например вот так const _App = injectStores(App)((manager) => { return { app: manager.get('app'), singletonStore: createSingletonStore() // create store without manager }; }); а могу делать типа такого const _App = injectStores(App)((manager) => { const {$language} = manager.get('i18n'); const {$state, changeState} = manager.get('app'); return { state: $state, changeState: () => changeState('loaded', $language.getState()) singletonStore: createSingletonStore() // create store without manager }; });
Arthur
и получается, что в компонент сразу всё готовое прилетает
Arthur
ну и это решит все проблемы с "грязными" компонентами / эффектами и тд
artalar
Ну еще управление отписками добавить - это совсеми изи
Arthur
Вот этого не достаточно?
да выглядит сложно как-то
Arthur
+ я хочу собрать всю логику управления сторами в одном месте
artalar
// usage export const Component([’depsName’], ({depsName}) => <>{depsName}</>) (нужно местами аргументы поменять)
artalar
да выглядит сложно как-то
Это классическое использование хуков, надо привыкать)
Arthur
Это классическое использование хуков, надо привыкать)
ну хуки я часто юзаю, просто сам хук перегружен всё же не хочется миксовать и логику получения данных из IoC, и логику работы с этими данными
artalar
А в чем микс?
Arthur
ну хотя бы потому же srp
Arthur
А в чем микс?
а, стоп, сорри, я подумал, что это хук для запуска эффекта какого-то
Arthur
ну и типа там же IoC используем
Павел 💻
Всем привет! Пожскажите пожалуйста, как можно слушать изменения в state? Просто мне нужно запускать функцию, когда определённая переменная в state меняется
Vova
Vova
что тут не так?
Vova
блядь
Vova
спасибо
David
This hook was in our original alpha release, but removed in v7.1.0-alpha.4, based on Dan Abramov's suggestion
David
Черт
David
Уже ответили))
Anonymous
Подскажите плиз делают ли так или это не самый изящный вариант? в функции getUserChats метод setState и для этого туда сую this
David
А зачем туда весь this? Ты же получается весь компонент, включая props, refs, функции, updated, сам стейт, передаешь в setState, бред какой-то
Anonymous
Или вытащить наружу его лучше?
Anonymous
Тогда будет не очень красиво...)
David
Я не понимаю особо вопрос, кидаешь res в кач-ве аргумента...вызываешь с ним setState. Но судя по вопросу, это не вариант 😆
Vova
кто то может скинуть пример проекта react redux с хуками?
artalar
Я честно по началу думал что с хуками редакс умрет. Не потому что они его заменят, а потому что просто будет шаг вперед…
Vova
мне в этом чате уже два дня долбят что это максимально разные вещи
Vova
@artalar лучше писать на чистых хуках без редакса?
artalar
@artalar лучше писать на чистых хуках без редакса?
Ну я же сказал что хуки редакс не заменят
artalar
Это теплое и красное
artalar
Я про то что есть альтернативы редаксу: overmind, effector
Cenator 🐈
@DenisIzmaylov кажется уже стоит перепинить сообщение назад
Denis
Да, днём. Иногда даже если пинить без звука, срабатывает уведомления.
Denis
Не будить же народ:)
Unknown
Друзя подскажите пожалуйста где можно посмотреть как правильно сделать раутинг с редакс
Elen
Ребята, подскажите _ картинки в gridlist _ делаю роутинг и есть роутинг при нажатии на эти картинки_использую NavLink Вопрос _ все картинки стали разными размерами после роутинга ? Каким путем действовать? Может кто сталкивался ?
Elen
Друзя подскажите пожалуйста где можно посмотреть как правильно сделать раутинг с редакс
Вчера видела хорошее видео, постараюсь найти, я делала не с Redux, но попадалось интересное именно с ним
Unknown
Ilia
Ребят,как лучше стили передавать компоненту
Ilia
через props
Ilia
или импортировать css
Serge
Styled components ;) Зависит от задачи
Ilia
Ну задачи пока что сам себе ставлю)
Dmytro
зависит от того, что используется на проекте
Ilia
Ну а как понять ,когда первое,когда второе?
Dmytro
если нужно какое-то свойство во время работы приложения, то лучше передавать через пропсы
King
Ну а как понять ,когда первое,когда второе?
Или например, я задаю инлайн стили если нужно только одно свойство, а если несколько можно и класс завести
Vladimir
Обычно инлайн стили задавть не нужно
Vladimir
лучше всегда через класс
Vladimir
даже пустому элементу задать класс
Vladimir
когда будешь отлаживать верстку, так удобней ориентироваться