如果想让某个属性不显示,可以将其外层的el-form-item标签的v-if属性设置为false,这样该属性对应的表单项就会被隐藏起来。在submitForm()方法中,你可以根据表单的具体情况来判断是否需要提交这些隐藏的属性。以下是示例代码:

submitForm() {
  const formCopy = { ...this.form };
  delete formCopy.acTaxPiPersonVo;
  delete formCopy.acTaxPiPersonCalculationSchedule;

  this.$refs["form"].validate((valid) => {
    if (valid) {
      if (this.form.personId != null) {
        // 更新操作
        updateReportingRoyaltiesIncome(formCopy).then((response) => {
          this.msgSuccess("修改成功");
          this.open = false;
          this.getList();
        });
      } else {
        // 添加操作
        addReportingRoyaltiesIncome(formCopy).then((response) => {
          console.log(response, 'resssssssssss')
          this.msgSuccess("新增成功");
          this.open = false;
          this.getList();
        });
      }
    }
  });
},

上述代码中,formCopy对象是通过解构赋值复制this.form对象得到的,然后使用delete关键字删除了隐藏的属性。在表单提交时,通过判断this.form.personId是否为null来确定是执行更新操作还是添加操作。

隐藏表单属性的解决方案:在Vue.js中使用v-if和submitForm()方法

原文地址: https://www.cveoy.top/t/topic/fdz2 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录