vue中使用element-ui做表单新增出现报错:
Error in v-on handler: "TypeError: Cannot read properties of undefined (reading 'resetFields')"
1.使用了
resetForm(formName) {
this.$refs[formName].resetFields();
},
2.但是报错了,原因是:
mouted加载数据以后,隐藏的弹出框并没有编译渲染进dom里面。所以click弹出的时候$refs并没有获取到dom元素导致 ‘resetFields’ of undefined
3.解决:
resetForm(formName) {
this.$nextTick(()=> {
this.$refs[formName].resetFields();
})
},
注意事项:对DOM一系列的js操作最好都要放进Vue.nextTick()的回调函数中