В моей ситуации я хочу нажать входное значение и сохранить его в массиве в локальном хранилище VUEX. Я создаю массив в состоянии. Сначала я нажимаю свое значение, а затем преобразую в строку, чтобы установить это значение в хранилище в локальном хранилище. Я получаю его в массиве, анализируя мой JSON, но он не работает. Я не знаю, куда идет моя ценность. Также консоль выдает ошибку «push is not function».
state:{
formItems:JSON.parse(localStorage.getItem('formItems'))||[]
},
mutations:{
formFunction(state, myInput){
state.formItems.push({myInput});
localStorage.setItem('formItems', JSON.stringify(state.formItems))
},
<template>
<div>
<div class="container">
<div class="row">
<div class="col s12">
<input type="text" v-model="Input">
<br>
<button class="btn waves-effect" @click="saveInput">Save</button>
</div>
</div>
<p>{{text}}</p>
</div>
</div>
</template>
<script>
export default {
name:"test",
data:function(){
return{
Input:"",
}
},
methods:{
saveInput(){
this.$store.commit('formFunction', this.Input);
this.Input="";
}
},
computed:{
text(){
return this.$store.state.formItems;
},
</script>