LocalStorage не обновляется при перенаправлении на другую страницу в javascript - PullRequest
0 голосов
/ 18 июня 2020

Я пытаюсь сохранить значение в localStorage, а затем страница перенаправляется на другую страницу. но если значение было сохранено, я ввожу другое значение, когда я go на другую страницу, сохраненное значение является первым. например, если значение было «красным» в localStorage, то я ввожу значение «синий» после перенаправления страницы. Я обнаружил, что сохраненное значение - «красный».


<input type="text">
<button>click </button>


$('button').on('click', function () {

        callbackLogFun(); 

    });

    function callbackLogFun() { 

    localStorage.setItem('user', JSON.stringify($('input').val()));

    callRedirect(); 
 } 

function callRedirect() { 

     window.location.href = "sec-page.html";

} 

и так я называю это на второй странице


localStorage.getItem('user');


1 Ответ

0 голосов
/ 18 июня 2020

Если действительно не хватает времени для сохранения в localStorage до того, как страница будет перенаправлена, вы можете выполнять вызовы localStorage синхронно:

const localStorageAsync = {
    set: function (key, value) {
        return Promise.resolve().then(function () {
            localStorage.setItem(key, value);
        });
    },
    get: function (key) {
        return Promise.resolve().then(function () {
            return localStorage.getItem(key);
        });
    }
};

localStorageAsync
    .set('user', JSON.stringify($('input').val()))
    .then(function() {
        callRedirect();
    })
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...