RT,遇到一个奇葩问题,找不到故障在哪里了,遂求助dalao...下面上图
1:这是界面
首先描述一下问题:这个表单验证在输入不规范的时候提交是可以被触发的,可是在加上验证之后提交,表单内编辑完的数据就会变成编辑前的样子,最终导致修改不了;但如果跳过验证,填好表单直接提交就莫得问题。。辛苦dalao看下我这漏洞百出的代码吧。。。
2:这是弹框打开的方法和验证方法,表单数据保存在 this.changeData
3:这个是验证规则,只是验证必填
RT,遇到一个奇葩问题,找不到故障在哪里了,遂求助dalao...下面上图
1:这是界面
首先描述一下问题:这个表单验证在输入不规范的时候提交是可以被触发的,可是在加上验证之后提交,表单内编辑完的数据就会变成编辑前的样子,最终导致修改不了;但如果跳过验证,填好表单直接提交就莫得问题。。辛苦dalao看下我这漏洞百出的代码吧。。。
2:这是弹框打开的方法和验证方法,表单数据保存在 this.changeData
3:这个是验证规则,只是验证必填
updateCompany 函数 是否有使用 Object.assign?如果没有使用,则略过此回答,并提供更多的代码
如果是的话,那么此处 this.changeData被this.getData部分属性覆盖了。所以出现了你的状况
而console在打印的时候,在指向一个地址引用的变量时,显示的是这个变量在内存中最新的状态。而此时的状态在后面被替换掉了。
所以建议你debuge的时候使用debugger断点查看
9 回答1.7k 阅读✓ 已解决
6 回答1.6k 阅读
5 回答1.4k 阅读✓ 已解决
3 回答1.4k 阅读✓ 已解决
4 回答1.3k 阅读✓ 已解决
3 回答1.1k 阅读
1 回答2.7k 阅读✓ 已解决
this.resetForm('changeData') 应该写到提交方法的then()里面去,提交成功后才this.resetForm('changeData')