vue项目中input输入框输入不了值问题及解决
短信预约 -IT技能 免费直播动态提醒
编辑页面v-model 绑定的input 输入框输入不了值
原因
- 对象 会递归遍历data中定义的所有变量 所以如果没定义就监听不到变化
- 数组只有几个数组方法添加的会响应 通过下标不响应(push,pop会不响应)
解决方案
在获取到后端的数据后,定义一个新的对象,把后端数值接收到这个新的对象中,再把新的对象赋值给 data里面定义的对象
if(res.data.success == true){
let resForm={} //重新定义一个对象
resForm={...res.data.data.activityInfo}
resForm.activeTime=[res.data.data.activityInfo.startTime,res.data.data.activityInfo.endTime],
resForm.listOne=res.data.data.listOne
resForm.listTwo=res.data.data.listTwo
this.formData={...resForm} //把定义的对象赋值给data里面定义的对象
console.log(this.formData,2121212121)
}
vue技能点--el-input输入框无法输入、无法修改
现象
使用Vue框架,发现输入框<input>或者<el-input>的内容无法修改,也无法输入。
解决方案
首先,检查绑定方式,应该使用v-model,有时候会误用:value,导致无法修改。
其次,如果是绑定数组元素等复杂对象,可以在输入框添加@input="onInput()",然后在methods中添加方法:
onInput() {
this.$forceUpdate();
},
forceUpdate用来强制渲染,避免data中对象层次太深,Vue框架不自动渲染的情况。
总结
以上为个人经验,希望能给大家一个参考,也希望大家多多支持编程网。
免责声明:
① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。
② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341