【问题标题】:Conditional validation with Vuelidate?使用 Vuelidate 进行条件验证?
【发布时间】:2017-12-04 10:09:42
【问题描述】:

我有一个表单,可以应用不同的验证,具体取决于存储在 VUEX 存储中的参数 action。我试试这个:

data: function() {
   const validations = {
      sendToProject: {
        cardProject: {
          required,
        },
      },
      recallToBranch: {
        fioReceiver: {
          required,
        }
      }
   }
   return {
     validations,
   }
},
validations() {
  return {
    q: this.validations[this.action]  // supposed to be this.validations['sendToProject']
  }
},
computed: {
  ...mapGetters({
    action: 'action',
  }),
},

这确实有效,但在引导时会引发错误:

[Vue warn]: Error in render function: "TypeError: can't convert undefined to object"

并且该错误会阻止执行非 Vue 代码(Bootstrap jQuery 插件初始化等)。

如何解决?谢谢。

【问题讨论】:

标签: javascript vue.js vuex


【解决方案1】:

您是否尝试过在 required 验证器中使用 requiredIf。例如:

validations: {
  anyProp: {
    required: requiredIf(function (abc) {
      return abc > 10 && abc < 20
    })
  }
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-07-06
    • 1970-01-01
    • 2011-02-21
    • 1970-01-01
    • 2014-03-19
    • 2011-06-24
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多