element-ui 多个 validator 在指定 trigger时不能一起干活。。

Vanghohs
  • 183

代码 :

<script src="//unpkg.com/vue/dist/vue.js"></script>
<script src="//unpkg.com/element-ui/lib/index.js"></script>
<div id="app">
  <bb-son v-model="bean1"></bb-son>
</div>
var Main = {
  components: {
    'bb-son': {
      template: `
        <el-form :model="value">
          <el-form-item prop="name" label="名称" 
          :rules="[
          { required: true, message: '必须输入', trigger:' change'},  
          { type: 'number', message: '需要为数值', trigger:'change'}]">
              <el-input v-model.number="value.name"></el-input>
          </el-form-item>
        </el-form>
      `,
      props: {
        value: {
          type: Object
        }
      },
      data () {
        return {}
      }
    }
  },
  data () {
    return {
      bean1: {
        name: 1234
      }
    }
  }
}
var Ctor = Vue.extend(Main)
new Ctor().$mount('#app')

如果指定了 trigger:' change', 无论怎么输入,都会提示校验失败。 如果去掉trigger, 就正常工作了。

求解。

online 版本:
https://jsfiddle.net/mmx38qxw...

回复
阅读 6.5k
1 个回答
宣传栏