Valentin
Пробовал все из вышеперечисленных, ант больше всего пока нравится. Компоненты почти на любой чих, легкая кастомизация
во во, я готов семантик расмотреть. Но кажеться компоненты из стандартного ui есть, а больше ничего. И какой то он не "современный". Слишком блеклый
Sergey
Люди добрые, подскажите как сделать плавный скролл на странице? не переход по якорям, а именно свободный скролл. Страница почти вся на React
А остальные сайты как себя ведут? Ну вообще это уже задача обычная, перехватываешь событие и плавно двигаешь контент. Потом умираешь на поддержке мака, виндовых тачпадов...
Valentin
это общие слова. Они как-то относятся к обсуждаемой теме?
вообще никак, тебе нужны ты и делай синтетические тесты под именно твой кейс. Откуда мы знаем что будет быстрее в твоем случае? Если архитектурные варианты на одном инсрументе могут дать разные результаты?
Максим
У анта многие компоненты я оставляю без изменений, если нет особых требований по дизайну
Vladislaw
Подскажите, нужно записывать значение таймера в стор и получается спам экшенами каждую секунду, есть ли какой-то способ избавиться от этого?
Vladislaw
Лучше опиши задачу, зачем значение таймера в сторе?
Отображает оставшееся время сессии для пользователя и каждую секунду компонент этот таймер отрисовывает.
Valentin
Отображает оставшееся время сессии для пользователя и каждую секунду компонент этот таймер отрисовывает.
у тебя есть дата окончания сессии или можно ее вычислить отдельно? Если да, вынеси это все на ui. Это не относится к бижзнес логике. А просто украшательство. У тебя будет дата окончания и теущая дата и ывчисляй, епта
Vladislaw
у тебя есть дата окончания сессии или можно ее вычислить отдельно? Если да, вынеси это все на ui. Это не относится к бижзнес логике. А просто украшательство. У тебя будет дата окончания и теущая дата и ывчисляй, епта
Тогда такой вопрос к этому времени помимо компонента отрисовки слушает модалка, которая за 30 секунд предупредит пользователя, что сессия окончится + после каждого успешного запроса таймер обновляется. То есть мне реализовать 2 таймера один для отрисовки и другой для модалки?
Vladislaw
Если вычислить отдельно.
Valentin
Ты рофлишь? Ты можеш ьсделать хоть два таймера, хоть один и в нем засунуть две проверки и два колбека.
Vladislaw
Так лучше будет даже, спасибо
Valentin
Подскажите дурику, как в cra + ts включить новый синтаксис prop?.anyprop и мега штучку ??
Daniil
В новом тс это уже ведь должно быть 🤔
Valentin
В новом тс это уже ведь должно быть 🤔
пару дней назад поставил cra --ts и незя, не понимаю что ему не нравится
arthur
Обнови его. Уверен, что там 3.6
Denis
пару дней назад поставил cra --ts и незя, не понимаю что ему не нравится
из коробки никак вроде https://www.reddit.com/r/typescript/comments/ddlbrj/typescript_37_beta_optional_chaining_with_create/ https://medium.com/@adostes/enabling-optional-chaining-in-a-create-react-app-a9f626a515d9
Valentin
Обнови его. Уверен, что там 3.6
нет, я вчера еще проверял "typescript": "3.7.2"
Valentin
Ну тогда жди обновления кра
а как редактировать .babelrc и стоит ли?
Denis
а весь билд происходит через react-scripts?
ч-з react-app-rewired, а что там под капотом хз
Denis
а как редактировать .babelrc и стоит ли?
вот в том то и дело, что из коробки вроде никак
Александр
а как редактировать .babelrc и стоит ли?
У меня react-app-rewired на нескольких проектах, добавил просто babel плагин для optional chaining, а из коробки в cra вроде бы никак этого не сделать, увы
Valentin
а можете объяснить, что в cra.react-scripts ? Как я понял там с начала времен бабель, а тс так же бабелем парсится или сначала ts-node и вообще стоит мне обращать негативное внимание на бебель
Александр
а конфиги бабеля прописывал в package? я просто хз как модифицировать этот cra
В cra конфиг никак не модифицировать без eject или без того чтобы обертку в виде rewired заюзать
Sergey
вообще никак, тебе нужны ты и делай синтетические тесты под именно твой кейс. Откуда мы знаем что будет быстрее в твоем случае? Если архитектурные варианты на одном инсрументе могут дать разные результаты?
Это абсолютно разные варианты. Но даже в случае нишевого применения я могу привести довольно убедительные минусы подхода MobX. И дело не в моей идеологии даже, а в идеологии реакта
Sergey
если нужен такой кейс, с которым демонстрировался MobX, то либо реакт был выбран опрометчиво вообще. Либо для оптимизации такого на мой взгляд проще "написать на Си", чем костылить такую идеологию в чужой монастырь. Но MobX не ограничивается одним лишь реактом, где-то он вполне себе родной
Anonymous
Можно ли так писать ?, а то у меня в консоли пишет warning
Anonymous
Какой варнинг то?
React Hook useEffect has a missing dependency: 'getQuote'. Either include it or remove the dependency array
Герман
Можно ли так писать ?, а то у меня в консоли пишет warning
Тебе нужен в зависимость эффекта этот метод, только оберни его в useCallback
Тимофей 🛴
React Hook useEffect has a missing dependency: 'getQuote'. Either include it or remove the dependency array
Эту функцию нужно передавать в зависимости useEffect
Ksenia
привет, есть тестовое приложение-мессенджер. Когда отправляешь сообщение, слева в списке чатов, чат с новым сообщением переностится наверх списка. Нужно реализовать анимацию его "всплытия наверх". С помощью чего проще всего это сделать будет? Мб библиотеку какую подскажете
Nuruddin
здравствуйте : есть файл state.js : let state={ loginStatus: false ... } я поменял значение этой переиенной на тру в этом файле. После редиректа у меня снова встанет значение на фолс ?
Sm•ok
а для чего хранить стейт в файле ?
Sm•ok
Ты редакс юзаешь, а это инишл стейт ?
Igor
Всем привет, мне нужно повесить лоадер на момент пока запрос не завершился . ( архитектура action reducer saga) не знаю как передать состояние с реализации запроса в компонент где он вызывался
Alexander
Alexander
да, что то такое
Sergiy
привет всем. Есть ли расширение на VS code для реакта? нужно, чтобы при вооде каких-то символов разворачивался шаблон с пустой функцией
Sergiy
например я ввожу fun и мне разворачиваеться: import React from "react"; const Name = () => { return <div></div>; } export default Name;
Sergiy
спс
i
Всем привет. Хочу посоветоваться - нормальная ли практика отдавать дочернему компоненту ссылку на родителя, что бы использовать его методы подвязанные с редаксом? В плане повторного рендеринга ведь всё равно можно настроить при каких конкретно условиях он происходит(тру или фолс)
i
Aleksandr почему? Я могу отдельно передавать по методу в каждое свойства доч компонента, но поскольку ф-ция - сложный объект, рендеринг всё равно будет происходить каждый раз
i
и мне всё равно нужно будет писать в методе условия при которых должен обновлятся рендер
Александр
Ну начнём с того, что таким способом вы намертво связывает дочерние компоненты с родительскими, и по сути не контролируете что они могут там вызывать
i
эти ф-ции не меняются/не заменяются по ходу исполнения программы, просто исполтзуются
Александр
Второй момент, что вы привызыватесь к классовыми компонентам (речь же о прикидывании ref идёт?), что не то чтобы плохо само по себе, но не универсально скажем так. Есть конечно useImperativeHandle, но это тут изврат.
i
не очень понимаю вопрос(в том смысле почему плохо или хорошо, про хуки пока не читал), и как вопрос связан конкретно с моментом повторого рендеринга доч компонента?
Александр
И вообще я перестал понимать как вы собрались дёргать методы родителя? Через ref.current.props.pushInvite чтоль?
i
this.props.parentProps.pushInvite()
i
почему через ref? родитель через пропс передаётся
i
я может не совсем правильно описал вопрос, не уверен что сейчас об одном и том же говорим
Александр
почему через ref? родитель через пропс передаётся
Потому что вы сказали что будете ссылку на родителя передавать
i
да, я имел в виду прописы родителя
Александр
Ну вот я не смог сообразить и понял буквально, ну тогда почему нет, но только не через parentProps, а явно и только те которые действителено нужны дочерним компонентам
Ivan
Всем привет. Хочу посоветоваться - нормальная ли практика отдавать дочернему компоненту ссылку на родителя, что бы использовать его методы подвязанные с редаксом? В плане повторного рендеринга ведь всё равно можно настроить при каких конкретно условиях он происходит(тру или фолс)
Всё просто — чем больше пропсов вы прокидываете в компонент, тем сложнее этот компонент поддерживать. Если вы прокидываете в компонент пропсы родителя — сложность поддержки возрастает в разы. Почему бы не завернуть сам компонент User в connect и там определить, какие экшены он может диспатчить? А если делать на хуках с useDispatch, то будет ещё проще — даже connect не нужен.
i
когда я пробывал доч компонеет подключить в редаксу, так вышло, что они только один раз получали пропсы от родителя и при дальнейшей рабое даже при получении новых пропсов они не видели новые значения, они видели только хранилище
Сергей
Пацыки, кто знает, на что влияет такая строка при прототипном наследовании? MyObject.prototype.constructor = MyObject; Сейчас тыркаю, что с ней и что без нее, работет вроде все так же