Не удается восстановить данные из локального хранилища не работает - PullRequest
0 голосов
/ 20 декабря 2018

Так что я не могу опубликовать код в jsfeedle, это проблема с моим провайдером или jsfeedle - он не позволяет мне сохранять код.Поэтому я отправляю код здесь:

<!DOCTYPE html>
<html>
<head>
    <script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script>
    <title>test</title>

</head>
<body>
    <div id="app">
     <input v-model="message" @keyup.enter.native="pressed">
    </div>

</body>

    <script>
        new Vue({
          el: '#app',
          data: {
            message: ''
          },

            created()
              {
                document.onkeydown=function(e)
                  {
                    var key=window.event.keyCode;
                    if(key==113){
                      console.log('F2 pressed save')
                      localStorage.message = this.message;
                      console.log("recovered value: ", this.message)
                    }

                    if(key==115){
                      console.log('F4 restore')
                      // this.message = localStorage.message;
                      this.message = "444";

                    }

                  }

            }

            })

    </script>

</html>

Проблема в том, что я не могу восстановить сохраненные данные локального хранилища, нажав клавишу (F4 в моем случае).

upd: живой пример здесь https://jsbin.com/wiqezuheji/edit?html,js,output

Ответы [ 2 ]

0 голосов
/ 20 декабря 2018
document.addEventListener("keydown", function);

попробуйте

localStorage.setItem('message', this.message);

для установки в localStorage и

this.message = localStorage.getItem('message');

для получения из localalstorage

0 голосов
/ 20 декабря 2018

Способ сохранения и извлечения переменных в localStorage работает немного иначе, чем ваша попытка.Правильный синтаксис:

// Get something from the localStorage
localStorage.getItem('item_name_here');

// Set something in the localStorage
localStorage.setItem('item_name_here', value);

// Remove something from the localStorage
localStorage.removeItem('item_name_here');

// Clear the entire localStorage
localStorage.clear();

Так что в вашем случае это будет

// Saving the message in the localStorage
localStorage.setItem('message', this.message);

// Retrieving the message from the localStorage
this.message = localStorage.getItem('message');

Для получения дополнительной информации вы можете посмотреть в документации

Редактировать

Вот рабочий JSFiddle в качестве примера

А вот рабочий JS Bin пример

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...