iview的select回显数据,number类型验证不了

https://run.iviewui.com/Kkuaz9G0

自己看吧。
上数据---> 取消 ----> 上数据
结果,select那个不会验证通过。

<template>
  <div>
    <Form ref="valids" :model="device" :rules="ruless" :label-width="120">
      <FormItem label="名称" prop="name">
                      <Input v-model="device.name" placeholder="名称"></Input>
         </FormItem>      
      <FormItem label="类    型" prop="type.id">
              <Select v-model="device.type.id" placeholder="类型" :transfer="true">
                <Option v-for="(item,index) in datas" :value="item.id" :key="'type'+index">{{item.name}}</Option>
              </Select>
            </FormItem>
        </Form>
    
    <button type="info" @click="bb">
      上数据
    </button>
    <button type="info" @click="bbc">
      cancel
    </button>
  </div>
</template>
<script>
  export default {
    data () {
      return {
        device:{
          type: {
            id: null
          }
        },
        datas: [{
          id:65,
          name: 'type1'
        },{
          id:66,
          name: 'type2'
        }],
        ruless: {
        name: [{ required: true, message: '必填项!', trigger: 'blur' }, { required: true, message: '必填项!', trigger: 'change' }],
        'type.id': [{ required: true, message: '必填项!', trigger: 'blur', type: 'number' }, { required: true,
          message: '必填项!',
          trigger: 'change',
          type: 'number' }]
      },
      }
    },
    methods: {
      bb () {
        this.device = {
          id:4,
          name: 'test1',
          type: {
            name: 'type1',
            id:65
          }
        }
      },
       bbc () {
        this.device = {
          type: {
            id:null
          }
        }
      },
    },
    mounted () {
      
    }
  }
</script>
<style>

</style>
阅读 4.7k
1 个回答

验证器默认你的类型是String,你需要在对应的条件中加上 type:'number'

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进