0

页面:

<el-input v-model="cPlaceholder"></el-input>
computed:{
    cPlaceholder:{
      get(){
        return this.$store.state.currentInputFrom.placeholder
      },
      set(val){
        this.$store.commit('setPlaceholder', val)
      }
    }
}

VUEX:

state: {
    currentInputFrom:{
    }
},
mutations: {
    setPlaceholder(state, value){
      state.currentInputFrom.placeholder = value
    }
}

操作结果:
在页面这个输入框输入内容之后,VUE设置成功,但是页面上不显示
图片描述

补充一下
补充一个新的发现,用原生的input可以实现,我这个是用了ui库的input

2019-06-14 提问
3 个回答
0
{
    state: {
        currentInputFrom:{
           placeholder: '', // !
        }
    },
    mutations: {
        setPlaceholder(state, value){
          state.currentInputFrom.placeholder = value
        }
    }
}
0

state 中需要给 placeholder 默认值,因为 vue 的响应式系统依赖于数据的初始化给每一个 key 赋值。

0

看看是不是这样原因导致的
https://cn.vuejs.org/v2/guide...

撰写答案

推广链接