Anonymous
дальше при переходе опять на приватную страницу редирект не происходит
Китикет
Ставь тогда интервал 100 мс и проверяй авторизацию
Китикет
xD
Daniil
Bogdan
в доке есть раздел про это
вот именно вот это типизировать же нужно? ${props => types[props.params.size]}
Daniil
под такую цель
Anonymous
в роутере, он не хочешь делать редирект
Bogdan
вот именно вот это типизировать же нужно? ${props => types[props.params.size]}
а еще ведь нужно затипизировать пропсы, которые передал, их то как типизировать? создавать компонент сверху что ли?
Китикет
в роутере, он не хочешь делать редирект
Он не должен делать редирект, если ты отрендерил страницу и никуда оттуда не уходишь
Китикет
Так тяжело это понять что ли
Anonymous
Он не должен делать редирект, если ты отрендерил страницу и никуда оттуда не уходишь
а мне нужно, чтобы если человек повторно зашел на страницу приватную — его редиректнуло
Anonymous
знаешь как это реализовать?
Китикет
Если ты isAuthorized сделаешь false
Китикет
А как это делать это уже другой вопрос
Anonymous
Если ты isAuthorized сделаешь false
ты странный? Я написал сюда вопрос, потому что у меня при false нет редиректа
Ilya
Нужно было удалить лок файл и сделать инсталл заново
удалять лок файл это не очень хорошая идея.
Ilya
особенно если продукт уже в проде
Anonymous
Значит ты не рендеришь редирект при false?
return ( <Route {...also} render={props => (isLogged ? <Component {...props} /> : <Redirect to="/login" />)} /> );
Anonymous
<PrivateRoute path="/posts" component={PostComponent} /> <Route path="/login" component={LoginComponent} />
Китикет
return ( <Route {...also} render={props => (isLogged ? <Component {...props} /> : <Redirect to="/login" />)} /> );
Это работает только в момент рендера роута, понимаешь?
Rustam
Так а с чего у тебя PrivateRoute будет ререндериться?
Anonymous
Это работает только в момент рендера роута, понимаешь?
я это уже давно понял, поэтому написал сюда с надежной, что кто-то подскажет как сделать редирект не в момент рендера
Китикет
я это уже давно понял, поэтому написал сюда с надежной, что кто-то подскажет как сделать редирект не в момент рендера
Редиректа в таком кейсе не в момент рендера быть не должно в нормальном приложении
Ilya
вот именно вот это типизировать же нужно? ${props => types[props.params.size]}
ну это обычная функция,типизирую как любую другую функцию. Не уверен что можно как то по другому
Китикет
я это уже давно понял, поэтому написал сюда с надежной, что кто-то подскажет как сделать редирект не в момент рендера
Видим что на запрос пришло 401, посылаем запрос на рефреш токена, ставим новый токен, повторяем запрос
Anonymous
если знаешь, пожалуйста подскажи
Bogdan
да что то никак
плюс нужно еще входящие пропсы типизировать ведь
Китикет
Видим что на запрос пришло 401, посылаем запрос на рефреш токена, ставим новый токен, повторяем запрос
Никаких редиректов получается нет, просто запрос будет подольше идти
Anonymous
как мне скрыть страницу от незалогиненого пользователя?
Китикет
Уже
Ilya
плюс нужно еще входящие пропсы типизировать ведь
https://github.com/styled-components/styled-components/issues/630 почитай тут. не знаю на сколько это все актуально
Anonymous
я ее не скрыл
Anonymous
должен стоять редирект на логин
Anonymous
или регу
Anonymous
а не пустая страница
Китикет
я ее не скрыл
Ты рендеришь редирект если isLogged === false
Anonymous
Ты рендеришь редирект если isLogged === false
редирект работает только при первом заходе на роутер
Anonymous
на втором заходе — пустая страница
Anonymous
леяут грузится, а компонент нет
Китикет
редирект работает только при первом заходе на роутер
Он должен работать при изменении pathname в адресной строке
Anonymous
а он не работает с кодом выше
Китикет
Если так не работает - у тебя косяк в устройстве роутера и ты не там ищешь
Rustam
Сделай HOC withAuth и передавай туда компонент для отрисовки, в HOC проверяй авторизован ли пользователь и делай что нужно. Можно ещё решения попридумывать
Ilya
плюс нужно еще входящие пропсы типизировать ведь
вроде как вот все варианты https://github.com/styled-components/styled-components/issues/630#issuecomment-508793848
Китикет
У меня со styled и типизацией всегда траблы
Китикет
Поставил типы из flow-typed - все равно uncovered area
Ilya
Поставил типы из flow-typed - все равно uncovered area
с flow чет совсем все печально, мы вот видимо все таки на ts перейдем
artalar
выбрось стайледы посмотри на цсс модули
css модули давно устарели. Они решают слишком узкую, практически единственную, задачу. Когда на деле все сложнее. Посмотрите на reshadow
Китикет
reshadow бы еще доку покрасивее
Китикет
Надо может заняться этим, вложиться в опен сурс)
Vladimir
дока reshadow в ие11 вообще не работает, тупо белая страница
artalar
Я же говорю не “берите”, а "посмотрите"
artalar
дока reshadow в ие11 вообще не работает, тупо белая страница
Какому разработчику придет в голову сидеть с IE?)
artalar
Даже гитхаб деприкейтит IE! А вы говорите
Bogdan
у стайледов есть вот { StyledComponent, ThemedStyledProps } from "styled-components"; и абсолютно не понятно, как их юзать
Vladimir
Какому разработчику придет в голову сидеть с IE?)
я хотел проверить, работает ли оно в нем хоть как-то
Vladimir
А этот ваш reshadow, такой же прожорливый как и styled components?
Vladimir
А этот ваш reshadow, такой же прожорливый как и styled components?
он позиционируется как максимально антипродожливый
artalar
я хотел проверить, работает ли оно в нем хоть как-то
Работает без динамический переменных
Kurzdor
А этот ваш reshadow, такой же прожорливый как и styled components?
решэдоу как и линария и астротэрф компайлятся в цсс
Kurzdor
но решэдоу выглядит покруче
artalar
reshadow интересно, но пока он не устаканится в прод страшно нести
В Яндексе он уже где-то в проде. Там с докой не оч, а сам код стабильный, я так понял
Китикет
а пробовал их, хотя бы в петпрожекте?
А как там с динамическими переменными из жс? Это вообще возможно, и надо ли всякие вебпак плагины если да?