Локальное хранилище — это веб-API, встроенный в современные веб-браузеры. Это позволяет веб-сайтам/приложениям хранить данные в браузере, делая эти данные доступными в будущих сеансах браузера. Есть два метода жизненного цикла React, которые мы можем использовать в нашем компоненте для сохранения/обновления локального хранилища браузера при изменении состояния:
componentDidMount()
componentDidUpdate()
componentDidMount
запустится, как только ваш компонент станет доступным и загрузится в браузер. Это когда мы получаем доступ к localStorage. Поскольку localStorage не находится в Node.js/Next.js из-за отсутствия оконного объекта, нам придется подождать, пока компонент смонтируется, прежде чем проверять localStorage на наличие каких-либо данных. Итак, если вы хотите присвоить значение локального хранилища переменной, сделайте это внутри метода componentDidMount
.
componentDidMount() {
const data = localStorage.getItem('id')
console.log(data);
if(data) {
//here you can set your state if it is necessary
}
}
И если мы хотим обновить значение нашего локального хранилища через состояние, мы можем легко обновить значение localStorage нашим значением изменений, используя componentDidUpdate. Этот метод запускается каждый раз при изменении состояния, поэтому мы можем просто заменить данные в localStorage нашим новым состоянием.
componentDidUpdate() {
localStorage.setItem('id', JSON.stringify(this.state))
}
person
Makdia Hussain
schedule
26.06.2019