Sergey
effector.now.sh
Nik
окей, трайну, спасибо
Sergey
t.me/effector_ru на самом деле всё проще чем с redux-act
Sergey
а в чем сложность?
Sergey
просто установил и заиспользовал где нужно он же не глобальный, провайдеров не требует
Sergey
можешь хуки
Sergey
можешь подписать чисто один маленький компонент так будет проще
Sergey
import { createStore } from 'effector' import { useStore } from 'effector-react' const store = createStore() const Foo = () => { const value = useStore(store) return ( <div>{value}</div> ) }
Sergey
лучше переписать этот большой компонент
Sergey
разбить на несколько поменьше
Sergey
а ещё лучше, вообще избавиться от классов)))
Sergey
так может и стоит разбить? вместо много логики, сделать меньше.
Sergey
ох боль)
Sergey
вроде того
Cenator 🐈
В классах же не работают хуки
Anonymous
Ребятки, попробовал андроид-разработку на котлине, ужаснулся с императивного кода и не только, буду пробовать RN
Anonymous
Cenator 🐈
Sergey
ладно, фейл
Sergey
нельзя так присваивать же
Sergey
нужно создать событие которое обновит значение в сторе const updated = createEvent() store.on(updated, (previous, newvalue) => newvalue) и потом вызывать где нужно updated("123")
Sergey
а что в store?
Sergey
давай не писать столбиками и пойдем в чат t.me/effector_ru
Максим
А useState можно использовать в компонентах (чистых) или нужно useState юзать в контайнере и пробрасовать в компонент?
Максим
Во многих гайдах написано то что есть дизайн компоненты который только через пропсы принимают параметры, т.е назову их чистые они не имеют права общатся с редаксом, и есть компоненты контейнеры которые могут это делать, это не правильно? (я новичек в реакт)
Максим
Спасибо посмотрю, на первых коментах вижу что лучше делаить по фичам а не по контейнерам и компонентам, вот мой тестовый проект https://github.com/minority/node-react-mongo-auth я начал делить уже по (контейнер\компонент) это плохо?
Андрей
Для чего setSubmiting?
Sergey
Для чего setSubmiting?
чтобы указать форме состояние отправки запрос же не мгновенно улетает и нужно заблокировать форму или показать лоадер
Андрей
Ааа
Andrei
не делать форс апдейт
Andrei
👌
Sergey
заиспользовать useReducer например но тут скорее надо задуматься о том, чтобы его не делать а решить вопрос по другому
Sergey
записать в стейт
Sergey
const [state, setState] = useState(null)
Kurzdor
ребят а cDM и cWUM на useEffect так нужно переписать? useEffect(() => { document.addEventListener('mousedown', handleClickOutside); return () => { document.removeEventListener('mousedown', handleClickOutside); }; }, []);
Kurzdor
да
спасибо
Sergey
только handleCLickOutside лучше создать в useEffect
Sergey
а ещё лучше установить npm-пакет а не писать велосипед
Sergey
какой?
https://github.com/Andarist/use-onclickoutside
Kurzdor
а то да, сломаю себе ногу пока
Sergey
лучше два стейта
Kurzdor
https://github.com/Andarist/use-onclickoutside
спасибо тебе большое, Сова
Kurzdor
а что то подобное есть для classComponent?
Sergey
const [error, setError] = useState(null) const [isLoaded, setLoading] = useState(false)
Sergey
а что то подобное есть для classComponent?
попробуй погуглить https://www.npmjs.com/package/react-onclickoutside
zamir
https://usehooks.com
zamir
Тут полно всяких хуков
Sergey
import React, { useState } from 'react'
Andrei
кто-то пользуется из вас https://babeljs.io/docs/en/babel-plugin-proposal-optional-chaining ?
Andrei
прост мнение узнать, как вам оно
Sergey
https://reactjs.org/docs/hooks-state.html Почитай документацию, пожалуйста. Там не много
Anton
кто-то пользуется из вас https://babeljs.io/docs/en/babel-plugin-proposal-optional-chaining ?
я поставил. но столкнулся со следующей проблемой: позвали помочь доделать проект на vue, а для vscode экстеншен вью как-то сам валидирует джаваскрипт и считает этот optional chaining невалидным синтаксисом -.-
Eugene
Тоже стал потихоньку на хуки переписывать, ну или новые компоненты. Но, вот есть у меня страничка, с разными хэндлами строк на 100-150, и чот в классе думаю оно более читабельно 🤔
Roman
думаю это не еслинт, а просто редактор не поддерживает все фичи языка
Roman
ну собственно неудивительно - оно в stage 1 вроде, задолбаешься каждую хрень в редакторе поддерживать
Anton
Еслинт мб?)
ну у меня типа глобально стоит standard, который просто как завёрнутый в отдельный продукт конфиг и пресет для eslint. ну вот он vue файлы валидировать не хочет
Anton
а в реакте всё норм
Max
Тоже стал потихоньку на хуки переписывать, ну или новые компоненты. Но, вот есть у меня страничка, с разными хэндлами строк на 100-150, и чот в классе думаю оно более читабельно 🤔
Почти всю логику компонента, начиная с инициализации состояний и подключения контекстов, заканчивая описанием хэндлеров можно выносить в самостоятельный хук в отдельный файл.
Артём
Я могу внутри стайлед-компонента стилизовать Link реакт-роутера по тегу "a"? Я имею в виду, не является ли это плохой практикой.
Sergey
попробуй больше кода захватить скриншотом
Артём
попробуй больше кода захватить скриншотом
вопрос в том могу ли я стилизовать Link как a, вы меня тролируете?
Sergey
вопрос в том могу ли я стилизовать Link как a, вы меня тролируете?
я не троллирую, прошу прощения если так показалось. Я просто не вижу описания компонентов, только кусок кода из середины
Артём
я посчитал, что будет невежливо скринить всю простыню
Артём
@graph_sova
Sergey
@graph_sova
можно, но выглядит сложно. а компоненты должно выглядеть как можно проще.
Артём
можно, но выглядит сложно. а компоненты должно выглядеть как можно проще.
это первый проект, слайсы эти ваши слишком сложны для меня пока
myown.
всем привет, подскажите пожалуйста, я пробую вставить код, но при вставке в js файл после подключения всего описвнного https://react-bootstrap.github.io/components/navs/ Nav не распознается
Vitaliy
Может заимпортить Nav нужно?
Sergey
Регистр символов