Как показывать модальный или тост ТОЛЬКО тогда, когда пользователь только что вошел в систему или зарегистрировал учетную запись

#reactjs #passport.js #use-effect

Вопрос:

Кто-то новый заходит в мое веб-приложение и решает зарегистрироваться. Когда они регистрируются, они попадают на панель мониторинга. При первом посещении панели мониторинга я хотел бы поприветствовать их тостом или модальным сообщением.

Я использую passport local и passport google oauth2.0. который всегда отправляет обратно объект req.user со свойствами.

Я не уверен, как настроить эффект использования, чтобы вызвать это сообщение, когда они посещают панель мониторинга. Делаю ли я что-то вроде

 const useEffect(() =gt; { // show toast or modal },[// based on cookie time? or some req.user prop?])  

Ответ №1:

Вы можете просто использовать localStorage или файлы cookie, чтобы узнать, вошел ли пользователь в систему или нет, тогда в вашем эффекте использования вы можете сделать что-то подобное.

 useEffect(()=gt;{ //don't store any user info in local storage only flag const isLogin=localStorage.getItem("flag")//you can also use cookies if (isLogin==true) {  showModal(true); }   },[showModal])  

//в вашем возвращении

 return( showModal==true?lt;Modal/gt;:lt;gt;lt;/gt;   )