vuex实现表单信息边输入边保存,跳转页面信息不丢失
运用场景:项目中需要填写一个新增表单,填写到第三行内容时需要从A页面跳转到B页面获取信息,从B页面跳回A页面时之前用v-model绑定的第一第二行内容丢失。如下图所示场景
如何解决这一问题呢?
将每一行的信息在输入完成后直接存储vuex当中,具体如何实时存储请看代码
1.首先在当前vue组件中:
<div>
<span>有效日期</span>
<div>
<!--使用:value替代v-model绑定当前页面的值,setLimitTime为vuex中mutation中定义的方法-->
<input type="text" :value="limitTime" @input="setLimitTime($event.target.value)" style="text-align: right"
placeholder="请输入" />
</div>
</div>
<script>
import {mapState, mapMutations} from 'vuex';
methods:{
...mutation('vuex文件名',['setLimitTime'])
}
computed:{
...mapState('vuex文件名',['limitTime'])
}
</script>
2.在vuex中
const state={
limitTime: ``,//有效日期
//其他信息依次存储
};
const getters = {
};
const mutations = {
//保存有效日期
setLimitTime(state,limitTime){
state.limitTime=limitTime;
},