2017-01-02 8 views
9

Я работаю над редактором Markdown с Vue.JS, и я попытался использовать localstorage для его сохранения, но я не знаю, как сохранить новое значение для данных переменные в Vue.JS всякий раз, когда пользователь вводит!Vue.JS - как использовать localstorage с Vue.JS

+1

Пожалуйста, добавьте свое решение в качестве ответа, чтобы другие могли его перенести, и вы можете принять ответ в качестве своего решения. – nathanvda

+1

@nathanvda done :) –

+0

Хорошо! Теперь вы можете начать зарабатывать несколько очков :) – nathanvda

ответ

11

Примечание это было редактирование в моих поисках ион, но я делаю это отдельно, как предложил @nathanvda.


Я нашел решение, которое искал. первый метод использования часы для обнаружения изменений на переменную вы хранящих данные о так:

watch: { 
    input: function() { 
    if (isLocalStorage() /* function to detect if localstorage is supported*/) { 
     localStorage.setItem('storedData', this.input) 
    } 
    } 
} 

Это обновит значение переменной всякий раз, когда пользователь добавлять новые входы.

Затем присвоить новое значение переменной следующим образом:

app.input = localStorage.getItem('storedData'); 

И вот это :)

+0

Также вы можете сделать это с помощью простых событий, подобных этому https://jsfiddle.net/a8gkkpjs/1/ –

+0

Я сделал это, но этот способ не сохраняет последнее введенное значение после обновления страница. –

+1

Вы также можете использовать Vue-плагин. например https://github.com/pinguinjkeke/vue-local-storage – user2875289

5

Вы можете просто следуя сохранить в localStorage

localStorage.setItem('YourItem', response.data) 

Вы можете получить это с помощью:

localStorage.getItem('YourItem') 

Чтобы удалить это из localStorage:

localStorage.removeItem('YourItem') 
0

вы можете использовать V-модель, чтобы связать вас с переменной при каждом изменении или вы можете поместить его вычислить: {} section.computed похож на жизненный крючок vue.js, он повторно отображает компонент снова, когда его значения изменяются.