Sergey
eden
Китикет
Юрий
Китикет
emptyState нужен к примеру когда надо сбросить стейт к изначальному состоянию, в данном случае initialState это скорее persisted состояние, а не пустое изначальное
Китикет
Юрий
Китикет
А он от чего зависит?
От того авторизован ли юзер, логично же) Потом этот флаг уходит в ls вместе с остальными базовыми публичными данными юзера, и при перезагрузке сразу подтягивается и приложение об этом понимает
Юрий
Eugene
Китикет
Даже если такой флаг не добавлять, его все равно надо выводить через селектор например
Юрий
А смысл от флага тогда в ls?
Eugene
Можно в зависимости от наличие юзера выставлять🤔
Китикет
Artem
Всем привет, подскажите по єтому плагину в вебшторме
http://i.imgur.com/rlf0ZIH.png
Юрий
Можно задействовать этот флаг, что бы делать редиректы при logIn, logout, в компоненте брать через useSelector и если флаг поменялся, делать редирект
Eugene
Зачем? Так более очевидно
При разлогине чистить больше, и если вдруг сессия/токен/что-то еще не валидное, обнулять не забывать надо же 🤔
Китикет
Я конечно знаю что есть люди, которые вместо isAuthorized юзают что-нибудь вроде !!user, но я не из таких, я за более очевидное поведение)
Artem
нет такого четкого виделения типа как в ВСкоде
почему так
вот скрин как у меня сейчас(
http://i.imgur.com/HKdwoNB.png
Eugene
А так ток токен/что-то там удалил.
Юрий
Китикет
Peach
Здравствуйте
Можно как-то в react-router отловить нажатие кнопки reload и в этом случае открывать домашнюю страницу?
Eugene
Китикет
Vladimir
Китикет
Vladimir
В каком плане?
localStorage доступен любому js на сайте, какой-нибудь зловредный счетчик или xss могут его угнать
Eugene
А почему бы при открытие страницы первым запросом не получить авторизованного пользователя 🤔
Китикет
Eugene
Лоадер хд
Китикет
Лоадер хд
Можно представить ситуацию, что в правой стороне навбара никнейм, аватарка и кнопка выйти например
Ну и лоадер там это как-то))
Daniil
Eugene
Китикет
Плюс когда роли подтянутся, у юзера страница перестроится
Китикет
Китикет
Просто как бы нет ничего опасного в том, что там юзернейм и аватарка в ls лежат (и роли например), чтобы юзеру было приятно и он не ждал даже 100 мс лишних
Eugene
А когда новый юзер открывает страницу? Что там?🤔
Белая страница?)
Китикет
А проверку авторизации, подтягивание остальных данных, можно уже в фоне делать и это будет не видно
Eugene
Ну в целом норм тема 👍
Китикет
Вот кстати небольшой минус ситуации, когда токен в хттп онли куки, а у тебя нулевая инфа в лс об прошлой авторизации, немного неприятно
Китикет
В моем случае можно и токен в хттп онли держать, и при этом загрузки лишней не будет потому что хоть малейшая инфа есть
Eugene
The Даня
Привет!Подскажите решение, у меня ничего не получается установить через npm и выбивает ошибки
artalar
Стрим живой, готов отвечать на самые провакационные вопросы 🙂
artalar
Сегодня в 19:00 на нашем YouTube-канале Артём Арутюнян расскажет, как выполнить миграцию эталонного приложения на Redux, React и хуках на Reatom. Разберём, как сделать это постепенно, и какие преимущества даст эта операция.
youtube.com/watch?v=HOnU6tEtW3U
The Даня
сейчас скину ошибки
The Даня
Евгений
https://codesandbox.io/s/redux-form-synchronous-validation-d6466?fontsize=14&hidenavigation=1&theme=dark
Ребят напишите если кто-то сталкивался с таким на redux-form и получилось поправить.
Тест-кейс: ставим фокус на поле username после кликаем на желтую кнопку 'жми'
Ожидаем: ошибка валидации + alert('click')
По факту: только ошибка валидации
The Даня
Привет!Подскажите решение, у меня ничего не получается установить через npm и выбивает ошибки
Yury
Maxim
The Даня
Viktor
Все установилось. Просто есть такое понятие как peer-dependencies. Их автоматом не ставит НПМ. Пир депендеси это когда пакет ожидает что в твоём хост приложении будет эта зависимость установлена. Но это не всегда обязательно.
The Даня
Pavel
добрый вечер.
использую хук useState
const [attachments, setAttachments] = useState([]);
function handleAttachments(event) {
let attachmentsList = [];
for (let i in event.target.files) {
if (event.target.files[i] instanceof File) {
attachmentsList.push(URL.createObjectURL(event.target.files[i]));
}
}
setAttachments(attachmentsList);
}
тут при добавлении файлов в инпут должны заполнятся превью изображений в attachments.
но нифига - attachments пустой и не меняется.
что я делаю не так?
попробовал через useReducer
https://pastebin.com/5MiFDdZh
attachments обновляются, но компонент не ререндерится.
я ничего не понимаю, хочу просто блин заполнять массив превью изображений из файлового инпута и выводить их
from
разбираюсь в react native. Тут реакт, но мне кажется, то, о чем я хочу спросить, будет в react таким же.
Объясните пожалуйте, как работает выражение:
const Header =({title}) =>{ }
Как я понимаю, создается объект, в который передается анонимная функция, с параметром title, в этой функции происходят какие-то действия. Но мне не понятно, каким образом эта функция связана с объектом Header. Что происходит с этим объектом? Он сам превращается в функцию, с параметром title?
И так-же не понятна конструкция <Header title={'Hello'}/>
Здесь title это атрибут? Но как это всё устроено? Как параметр функции, объекта Header, становится атрибутом?
Объясните пожалуйста.
отвечая на первое — "Header" это не объект, а переменная. Которой присвоили функцию
Отвечая на второе — прочитай, что такое JSX и во что он в реальности превращается (jsx "превращается" в валидный js-код)
🦜
🦜
Чо за хуйня начинается
Denis 🇺🇦
Народ, объясните почему реакт считает, что getFetchUrl в данном коде меняется постоянно, каждый рендер?
Тимофей 🛴
Denis 🇺🇦
Тимофей 🛴
Виктор
если квери не из пропсов зачем вообще в рендере создавать
Denis 🇺🇦
То есть реакт при каждом ререндере вызывает функцию компонента, которая объявляет новую функцию в новой области памяти и поэтому при сравнении с функцией прошлого рендера они разные?
Bogdan
на самом деле если ты никуда не передаешь урл, то смысла нету оборачивать, ничего не выиграешь и хуже не будет скореевсего
Dmitry
Как стайлед с флой юзать ?
StyledComponent<Props, Theme, *>
так в последствии на инпуте ничего не выводится из типов (onChange и тд)