@laravel_creative_3103

Как выполнять триггер только для активной вкладки, но для открытых вкладок — не выполнять?

В файле contentScript.tsx я отслеживаю изменения storage, и если storage изменился, показываю определенный компонент. Но, при изменении storage - это срабатывает для всех вкладок, которые в целом открыты, а мне нужно выполнить только для активной вкладки. Каким образом можно это реализовать?

const App =() =>{
  const [error, setError] = useState<boolean>(false)

  useEffect(() =>{
    chrome.storage.onChanged.addListener((changes,area)=>{
      if(area==="local"&&changes.hasOwnProperty("isForbidden")){
        const newValue=changes["isForbidden"].newValue
        setError(newValue)
      }
    })
  },[])

  return(
    <>
      {error?
      <>
      <div>Ошибка</div> 
        </> 
        :null
      }
    </>
  )
}
  • Вопрос задан
  • 14 просмотров
Пригласить эксперта
Ответы на вопрос 1
yarkov
@yarkov
Помог ответ? Отметь решением.
Проверяй значение document.visibilityState
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы