Zhanadil
https://dev.to/trentyang/replace-lifecycle-with-hooks-in-react-3d4n Сможет ли полностью заменить useEffect?
artalar
Когда описываете состояния в реакте
artalar
На рынке в принципе нет нормального менеджера состояния и нормального шаблонизатора. У ребят из фейсбука хватило только сил сделать ~нормальный шаблонизатор (хотя он уже устарел). При этом проблема с состоянием осталась и они, что бы не тратить лишних сил, хардкодят хоть какие-то решения в сам реакт, потому что им это подходит - фейбук делают тонны команд и им нужна возможность делать компоненты изолированно и с локальностью (состояния - т.е. безопасно иметь несколько инстансов состояния), типо микросервисы. Конечно, т.к. у них тонна кода на реакте уже они от него не будут отказываться и поэтому смело могут добавлять туда фичи, которые будут делать из него фреймворк Так же напомню, что редакс просто не взлетел, а, кажется, были надежды... При этом стоит помнить что все остальные не фейсбук и: 1) часто пилятся монолиты (и правильно) где центральный сейт - то что нужно 2) смена шаблонизатора - вполне возможный кейс... Ну я это все из бошки своей придумал, конечно 🤷‍♂️
Mike
Ну что редакс "не взлетел" -- довольно спорно
artalar
Его не использует фейсбук и это о многом говорит.
Daniil
гайс, а с чем вы сейчас стартуете ? есть ли связка другая помимо mobx/redux?
artalar
Редакс норм, но не достаточно для большой и серьёзной компании - это звоночек
Mike
Его не использует фейсбук и это о многом говорит.
Ну так он про глобальный Стейт про который ты сам говоришь что им надо другое
Cenator 🐈
А еще фейсбук использует php3, это не значит что фб - пример как надо писать на реакте
artalar
Ну так он про глобальный Стейт про который ты сам говоришь что им надо другое
А можно было бы совместить... Просто md не хватило :troll:
MP
Текст
artalar
Текст
!ро 1д флуд
D
если юзать pixabay api в приложении типа wallpapers будет проблемы с копирайтом?
Andrey
Ребят ктото юзает final form and i18n? у меня небольшая бага. не отрабатывает обновление стейта когда язык поменялся. пока на форму не кликнешь остается старый стейт ошибки остаются на первом языке который был.
Виктор
всем привет как лучше всего поступать с токином в react? где его лучше всего хранить? Закидывать из localStorage в redux, или оставлять в localStorage? или может третий вариант?
Solnur
периодически одни и те же вопросы, нужен faq)
Eugene
🤔стали чаще советовать http only куки - значит ли это, что все эти срачи были не зря?
Sergey
И что с ним делать потом?
фронт вообще не должен иметь никакого доступа к токену
Victor
И что с ним делать потом?
Так в том-то и преимущество — ничего
Sergey
поэтому бекенд должен сам вписать его в кукис, с флагом httpOnly
Anonymous
+
Sergey
единственный безопасный способ
Anonymous
поэтому бекенд должен сам вписать его в кукис, с флагом httpOnly
Ты сам к этому пришёл, или на что-то опираешься?
Anonymous
Лол, а вы что это во фронте храните?)
Sergey
из локалстораджа украсть токен очень легко
Anonymous
фифти/фифти
Давай тогда ещё ссылок.
Sergey
Давай тогда ещё ссылок.
локалсторадж доступен любому cdn и расширению
Sergey
то есть любая уязвимость cdn или твоего же скрипта и токен утек, как и данные пользователя
Anonymous
И потом его ещё и не так просто отзовёшь, если построено неправильно
🎉
И что с ним делать потом?
Дёрнуть какой-нибудь /auth, получить 200(залогинен), или 401(отдать юзеру форму логина), на сервере класть куку, я так думаю.
Sergey
а куки нет?
httpOnly нет
Anonymous
Ок, пойду почитаю. Спасибо.
Victor
Ну и бекенд таки должен уметь альтернативно вытащить токен, к примеру, из хедеров — для разработки чтобы удобно было ;)
Андрей Чайковский
httpOnly нет
Не забывайте защищаться от CSRF
Eugene
🤔сейчас бы секюрити аудит пройти
Sergey
Anonymous
Csrf не настолько критичен, нужна ещё хсс или ориджин полиси, если не ошибаюсь, если в целом всё норм, то это не критично прям сильно
Efim
Не забывайте защищаться от CSRF
А какой сценарий атаки если приложение использует только аякс? В худшем случае сайт злоумышлиника получит ошибку CORSа. Я ошибаюсь?
A
Всем привет, такой вопрос, использовал ли кто i18n с api? То есть грузить перевод не из en.js, а получить объект с бэка и использовать в переводах
Efim
Ото лижбы от чего то защититься 😂
🧬𝒜𝓁ℯ𝓍 🐮🇺🇦🍉
Глянул httpOnly куки — я так понял, суть в том, что они будут передаваться именно как куки в хедерах (а не в теле аякс-запроса и не в хедере Authorization), но разве это не будет противоречить stateless-парадигме API?
🧬𝒜𝓁ℯ𝓍 🐮🇺🇦🍉
Efim
Всё туда я глянул, я и не говорил что она будет доступна из JS.
Ну значит ты не понял суть 😂 (а не в теле аякс-запроса и не в хедере Authorization) Вот эта скобка что-то невразумтильеоне
M
народ подскажите плиз как если есть образец firebase подключенный к ридаксу
🧬𝒜𝓁ℯ𝓍 🐮🇺🇦🍉
Ну значит ты не понял суть 😂 (а не в теле аякс-запроса и не в хедере Authorization) Вот эта скобка что-то невразумтильеоне
Это ты не понял суть. Я уже попробовал при загрузке страницы отдать httpOnly куку, и при аякс-запросе вижу эту куку в Request headers > Cookie
🧬𝒜𝓁ℯ𝓍 🐮🇺🇦🍉
Хотя с другой стороны, если API потребует именно Authorization header (на стороне сервера), тогда как?
Victor
Тогда это плохое API, нужно искать другое :Р
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
🤔а так можно писать?)
Eugene
{images.length &&
Алексей
Ну или в стиле angular сделать компонент If и рендерить чилдренов от значения пропсы
Sergey
https://www.npmjs.com/package/jsx-control-statements
Sergey
но лучше описать компоненты так, чтобы не понадобилось такое
Temuchin
где лучше размещать запросы к API, в мидлверах редукса или выносить в класс провайдер?
Sergey
а то как ты вызываешь уже другой вопрос вызывать их можно например в thunk
German
Я новичок, от слова совсем. Ищу примеры как правильно кодить, чтоб не заговнили. От Airbnb стайлгайды котируются для реакта или это всё вкусовщина?
R2D2
Есть такие массив данных: сен/сен<prn><pers><p2><sg><nom>/сен<v><iv><imp><p2><sg> . Здесь, <v> означает глагол (Universal POS tags). Как я могу это распарсить? Чтобы на выходе данные были таким: сен - это глагол.