Zhanadil
https://dev.to/trentyang/replace-lifecycle-with-hooks-in-react-3d4n
Сможет ли полностью заменить useEffect?
artalar
Когда описываете состояния в реакте
artalar
На рынке в принципе нет нормального менеджера состояния и нормального шаблонизатора. У ребят из фейсбука хватило только сил сделать ~нормальный шаблонизатор (хотя он уже устарел). При этом проблема с состоянием осталась и они, что бы не тратить лишних сил, хардкодят хоть какие-то решения в сам реакт, потому что им это подходит - фейбук делают тонны команд и им нужна возможность делать компоненты изолированно и с локальностью (состояния - т.е. безопасно иметь несколько инстансов состояния), типо микросервисы. Конечно, т.к. у них тонна кода на реакте уже они от него не будут отказываться и поэтому смело могут добавлять туда фичи, которые будут делать из него фреймворк
Так же напомню, что редакс просто не взлетел, а, кажется, были надежды...
При этом стоит помнить что все остальные не фейсбук и: 1) часто пилятся монолиты (и правильно) где центральный сейт - то что нужно 2) смена шаблонизатора - вполне возможный кейс...
Ну я это все из бошки своей придумал, конечно 🤷♂️
Mike
Ну что редакс "не взлетел" -- довольно спорно
artalar
Его не использует фейсбук и это о многом говорит.
Daniil
гайс, а с чем вы сейчас стартуете ? есть ли связка другая помимо mobx/redux?
Cenator 🐈
artalar
Редакс норм, но не достаточно для большой и серьёзной компании - это звоночек
Cenator 🐈
А еще фейсбук использует php3, это не значит что фб - пример как надо писать на реакте
artalar
MP
Текст
artalar
D
если юзать pixabay api в приложении типа wallpapers будет проблемы с копирайтом?
Andrey
Ребят ктото юзает final form and i18n? у меня небольшая бага. не отрабатывает обновление стейта когда язык поменялся. пока на форму не кликнешь остается старый стейт
ошибки остаются на первом языке который был.
Виктор
всем привет
как лучше всего поступать с токином в react?
где его лучше всего хранить? Закидывать из localStorage в redux, или оставлять в localStorage? или может третий вариант?
Solnur
периодически одни и те же вопросы,
нужен faq)
Danila
Sergey
Eugene
🤔стали чаще советовать http only куки - значит ли это, что все эти срачи были не зря?
Anonymous
Anonymous
Anonymous
Sergey
поэтому бекенд должен сам вписать его в кукис, с флагом httpOnly
Anonymous
+
Sergey
единственный безопасный способ
Anonymous
Sergey
Anonymous
Лол, а вы что это во фронте храните?)
Sergey
из локалстораджа украсть токен очень легко
Sergey
то есть любая уязвимость cdn или твоего же скрипта и токен утек, как и данные пользователя
Anonymous
И потом его ещё и не так просто отзовёшь, если построено неправильно
Sergey
🎉
И что с ним делать потом?
Дёрнуть какой-нибудь /auth, получить 200(залогинен), или 401(отдать юзеру форму логина), на сервере класть куку, я так думаю.
🧬𝒜𝓁ℯ𝓍 🐮🇺🇦🍉
Sergey
Anonymous
Ок, пойду почитаю. Спасибо.
Victor
Ну и бекенд таки должен уметь альтернативно вытащить токен, к примеру, из хедеров — для разработки чтобы удобно было ;)
Андрей Чайковский
httpOnly нет
Не забывайте защищаться от CSRF
Eugene
🤔сейчас бы секюрити аудит пройти
Sergey
Anonymous
Csrf не настолько критичен, нужна ещё хсс или ориджин полиси, если не ошибаюсь, если в целом всё норм, то это не критично прям сильно
Efim
Не забывайте защищаться от CSRF
А какой сценарий атаки если приложение использует только аякс? В худшем случае сайт злоумышлиника получит ошибку CORSа. Я ошибаюсь?
A
Всем привет, такой вопрос, использовал ли кто i18n с api?
То есть грузить перевод не из en.js, а получить объект с бэка и использовать в переводах
Efim
Ото лижбы от чего то защититься 😂
🧬𝒜𝓁ℯ𝓍 🐮🇺🇦🍉
Глянул httpOnly куки — я так понял, суть в том, что они будут передаваться именно как куки в хедерах (а не в теле аякс-запроса и не в хедере Authorization), но разве это не будет противоречить stateless-парадигме API?
Efim
🧬𝒜𝓁ℯ𝓍 🐮🇺🇦🍉
M
народ подскажите плиз как если есть образец firebase подключенный к ридаксу
Victor
Efim
🧬𝒜𝓁ℯ𝓍 🐮🇺🇦🍉
🧬𝒜𝓁ℯ𝓍 🐮🇺🇦🍉
Хотя с другой стороны, если API потребует именно Authorization header (на стороне сервера), тогда как?
Victor
Тогда это плохое API, нужно искать другое :Р
Sergey
Sergey
myown.
Привет всем
Подскажите мою ошибку?
dataSource={data}
renderItem={item => (
<List.Item>
<Link to={`/product/${item.id}`}>
<Card title={item.title}>
<img style={{ width: 240 }} src={require(`../assets/img/goods/${item.image}`)}/>
{
if (images.length) images.map(e => (<img src={require(`../assets/img/goods/${item.image1}`)}/>))
}
</Card>
</Link>
</List.Item>
)}
/>
);
myown.
там где иф подчеркивает
Eugene
🤔а так можно писать?)
Efim
Eugene
{images.length &&
Алексей
Ну или в стиле angular сделать компонент If и рендерить чилдренов от значения пропсы
Sergey
Sergey
https://www.npmjs.com/package/jsx-control-statements
Sergey
но лучше описать компоненты так, чтобы не понадобилось такое
Sergey
artalar
Sergey
Temuchin
где лучше размещать запросы к API, в мидлверах редукса или выносить в класс провайдер?
Sergey
Sergey
а то как ты вызываешь уже другой вопрос
вызывать их можно например в thunk
Temuchin
German
Я новичок, от слова совсем. Ищу примеры как правильно кодить, чтоб не заговнили. От Airbnb стайлгайды котируются для реакта или это всё вкусовщина?
R2D2
Есть такие массив данных: сен/сен<prn><pers><p2><sg><nom>/сен<v><iv><imp><p2><sg> . Здесь, <v> означает глагол (Universal POS tags). Как я могу это распарсить? Чтобы на выходе данные были таким: сен - это глагол.