vue中用JSON.parse(JSON.stringify(this.formData))来替代无效的this.$set()和this.$forceUpdate()

vue中用JSON.parse(JSON.stringify(this.formData))来替代无效的this.$set()和this.$forceUpdate(),第1张

最近在开发项目时遇到了一个问题,就是在使用antdvue开发时,有一个select多选框在通过onchange清空其所有值后,再选择时,控制台能够打印出来选中的值,前台界面也能够显示选中的值,但是必填校验依旧是未选中的红框状态。
使用了this. s e t ( t h i s . f o r m D a t a , ′ n a m e ′ , v a l u e ) 和 t h i s . set(this.formData, 'name', value)和this. set(this.formData,name,value)this.forceUpdate()依旧无法让红框消失。
然而在change事件函数中使用JSON.parse(JSON.stringify(this.formData))后便能够成功更新其状态,个中缘由暂不知晓,如果有哪位大神知道,敬请指教,谢谢!

cityChange (key, option) {
	this.formData.code = undefined
    this.formData.name= undefined
	this.formData = JSON.parse(JSON.stringify(this.formData)) // 有效
	this.$forceUpdate() // 无效
	this.$set(this.formData, 'code', undefined) // 无效
}

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/web/1296942.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-06-10
下一篇2022-06-10

发表评论

登录后才能评论

评论列表(0条)

    保存