🤴👷‍♂️🦸‍♂️🧚‍♀️
Привет. А сейчас актуально в реакте модалки и диалоги делать через порталы?
🤴👷‍♂️🦸‍♂️🧚‍♀️
актуально
в чем плюсы?
Vadim
в чем плюсы?
почитай зачем нужны порталы в доке реакта)
🤴👷‍♂️🦸‍♂️🧚‍♀️
почитай зачем нужны порталы в доке реакта)
Порталы позволяют рендерить дочерние элементы в DOM-узел, который находится вне DOM-иерархии родительского компонента.
Oleg
почитай зачем нужны порталы в доке реакта)
я кстати тоже не пойму в чем плюс, хотя доку читал. почему бы просто не разместить модальное окно где-нибудь в футере и брать данные через redux
Anonymous
я кстати тоже не пойму в чем плюс, хотя доку читал. почему бы просто не разместить модальное окно где-нибудь в футере и брать данные через redux
ну например одно из применений - эффект блюра на заднем фоне у модалки хотя конечно же сейчас такое легко сделать с помощью backdrop-filter
Anonymous
читай доку и по обстоятельствам используй
🤴👷‍♂️🦸‍♂️🧚‍♀️
читай доку и по обстоятельствам используй
ну мне нужно знать эти обстоятельства, лол. в доке не написали в чем профит
Ilya
у меня нет этого кейса🤷🏻‍♂️
любой transform на каком-либо родителе сломает fixed позиционирование
Ilya
у меня absolute
ломается через relative на любом родителе.
🤴👷‍♂️🦸‍♂️🧚‍♀️
ломается через relative на любом родителе.
мне стоит рендерить модалку в app или можно сразу в body?
🦜
мне стоит рендерить модалку в app или можно сразу в body?
для рендера в портале нужно создать якорь типо div#modal, div#notify
🤴👷‍♂️🦸‍♂️🧚‍♀️
для рендера в портале нужно создать якорь типо div#modal, div#notify
хмм, а у тебя есть пример как правильно юзать? А то я видел миллион примером и даже что-то типа const [containerEl] = useState(document.createElement('div'));
Ilya
мне стоит рендерить модалку в app или можно сразу в body?
не уверен что есть смысл пихать в тот же div что и основное дерево
🦜
Выйди и закрой дверь с другой стороны
🤴👷‍♂️🦸‍♂️🧚‍♀️
https://youtu.be/-qzRU7T4la0
спасибо, вроде по базе неплохо рассказывает
Konstantin
Ребят есть вопрос касательно стейта. Такое ощущение, что setState() обновляет стейт только со второго раза, это как?
Konstantin
нет конечно) Типа ты его уламываешь? Ну обновись плз
Ну вот допустим здесь я меняю yearOption через setYearOption, потом вызываю handleMonthChange и в консоли у меня старый yearOption
Stefan
ибо нет коллбэка в сеттере больше
Ilya
юзай useEffect
я бы лучше пересмотрел архитеткру в этом случае. Опираясь на то что видно на скрине
Konstantin
юзай useEffect
помогло
🤴👷‍♂️🦸‍♂️🧚‍♀️
https://youtu.be/-qzRU7T4la0
я правильно понял?
Konstantin
я бы лучше пересмотрел архитеткру в этом случае. Опираясь на то что видно на скрине
А что именно пересмотреть? У меня там просто два селекта, один отвечает за год, другой за месяц, поэтому каждому по переменной для стейта, но я только за идеи)
🦜
я правильно понял?
зачем создавать, если можно сразу в index.html создать?
🤴👷‍♂️🦸‍♂️🧚‍♀️
Vadim
зачем создавать, если можно сразу в index.html создать?
тогда модалка будет зависить от структуры index.html, что так себе
🤴👷‍♂️🦸‍♂️🧚‍♀️
Kurzdor
можно без рассизма?
Можно, но не так ярко
🤴👷‍♂️🦸‍♂️🧚‍♀️
Kurzdor
👌🏿
Не так ярко выходит 👌🏿
Anonymous
можно без рассизма?
Не расса, а раса!1!
🤴👷‍♂️🦸‍♂️🧚‍♀️
Не расса, а раса!1!
можно без флуда?
Vadim
и?
Ну ты когда пакет ставишь, который юзает порталы вносишь изменения в index.html?
Anonymous
Да!
Необучаемые...
Bohdan
а есть готовый тайп гвард для ReactElement?
Ivan
и?
И в коде нигде нет явной связи элемента в хтмл с порталом, который рассчитывает на его существование. Это центр кристаллизации багов.
Maxim
Привет мастера mobx, кто расскажет кто подскажет как сторы между собой общаются у вас?
Ivan
Привет мастера mobx, кто расскажет кто подскажет как сторы между собой общаются у вас?
Медиатор с динамическим реестром сторов и методами для отправки сообщений между сторами.
George
Приветствую! Хотел спросить, рассматривает ли кто-то вакансии и новые проекты по React разработке?
George
Спасибо!
Евгений
Подскажите пожалуйста , как правильно прокинуть мок стора в тесте, делаю все как в документации https://github.com/dmitry-zaets/redux-mock-store describe('Тесты умных компонентов с коннектом', ()=>{ const middlewares = [] const mockStore = configureStore(middlewares) it('should dispatch action', () => { const initialState = { systemInformation: 'systemInformation', registration: 'registration' } const store = mockStore(initialState) console.log(store, '<<<<<<<eto nash store') }) В итоге консольлог выводит { getState: [Function: getState], getActions: [Function: getActions], dispatch: [Function: dispatch], clearActions: [Function: clearActions], subscribe: [Function: subscribe], replaceReducer: [Function: replaceReducer] } '<<<<<<<eto nash store'
Андрей
Всем привет! Просто вопрос: почему переменная name в консоли выводится с запозданием на один символ, нежели текущее состояние стейта? То есть у меня в Реакт Дев Тулз показывает стейт допустим "Bar", а в консоль вывелось только "Ba". Вопрос на простую манипулация с формой и методом onChange
Victor
Кто нибудь пользует react-cosmoc? Как там задать глобальную перменную в window перед сборкой?
Anonymous
ребят поясните, как работает hot realoder. Как я понимаю клиент и сервер устанавливают соедениение через Websocket и при изменении на сервере он обновляет и в браузере?
Андрей
@mabunny @gropox Спасибо за ответы) Правильно ли я понял, что name просто имеет старое значение, так как вызов в консоль произошел до ререндера формы? Потому так происходит. Сейчас сделал отдельную кнопку для проверки, по клику которая текущее состояние name показывает, и оно совпадает со стейтом.
Иван
Еще как варик использовать скопированный стейт, там сразу обновки будут (ну или использовать ту переменную, которую отправил в setState)
Ivan
подскажите, начал разбираться, как писать компоненты на ts и сразу же уперся в банальном примере с таймером. Нужно объявить свойство экземпляра, но компилятор требует, чтобы оно сразу же было инициализировано. Как лучше поступить?
Евгений
В чем может быть проблема? Код теста который пишу it('прокидываем стор', () => { const initialState = { systemInformation: 'systemInformation', registration: 'registration' } const store = mockStore(initialState).getState() console.log(store, '<<<<<<<eto nash store') //console.log(store.getState(), '<<<<<<<eto nash store.getState()') const wrapper = shallow(<ConnectedTermsOfUse store={store} content = {"asdasdasd"}/>) //console.log(wrapper.props, '<<<<<<<eto nash prop') }) при прогоне теста выскакивает вот такое окно Warning: Failed prop type: The prop `store.subscribe` is marked as required in `Connect(TermsOfUse)`, but its value is `undefined`. in Connect(TermsOfUse)
Евгений
Правильно ли я прокидываю стор вообще?
Anonymous
MVD
Есть разница по производительности между [...state, element] и state.concat(element) ?
Ilya
все верно... только зачем знать кишки этого?
это просто за гранью «добра и зла», когда инженер задает подобные вопросы.
Ilya
Есть разница по производительности между [...state, element] и state.concat(element) ?
https://www.measurethat.net/Benchmarks/Show/579/1/arrayprototypeconcat-vs-spread-operator
Victor
просто интересно стало - может у человека какая-то проблема возникла и он издалека начал такие сразу судить начали ))
MVD
https://www.measurethat.net/Benchmarks/Show/579/1/arrayprototypeconcat-vs-spread-operator
Array.prototype.concat x 6,946,886 ops/sec spread operator x 30,036,799 ops/sec