场景复现:有一个输入框的是否必须输入取决于上面控制他显隐的选择框

 

 如何动态的影响rules的require呢?

最开始我是写到了data中

rules:{
        deviceName: [
          { min: 0, max: 18, message: '设备名称长度不得长于18位', trigger: 'blur'}
        ],
        ip:[
          { required: true, message: '请输入ip地址', trigger: 'blur' },
          { validator: validateIp,  trigger: 'blur' }
        ],
        gateway:[
          { required: true, message: '请输入网关', trigger: 'blur' },
          { validator: validateIp,  trigger: 'blur' }
        ],
        mask:[
          { required: true, message: '请输入子网掩码', trigger: 'blur' },
          { validator: validateIp,  trigger: 'blur' }
        ]
      },

 才学浅疏,发现require不能直接写变量

为了尽快完成工作我选择写在template中

 

        <el-form-item
          label="机箱号:"
          prop="caseID"
          v-show="form.delivery"
          :rules="[{required:form.delivery,message: '请输入机箱号',trigger:'blur'},            {pattern:/^(([1-9]|([1-9]\d)|(1\d\d)|(2([0-4]\d|5[0-5]))))$/,message: '输入的格式不正确',trigger:'blur'}]">
            <el-input v-model="form.caseID"></el-input>
        </el-form-item>

实现需求

机箱号需要1-255之间:正则表达式为/^(([1-9]|([1-9]\d)|(1\d\d)|(2([0-4]\d|5[0-5]))))$/

Logo

前往低代码交流专区

更多推荐