常用功能实现思维

120 阅读1分钟

ElementUI校验Form表单校验以及规则写法

var inputRules = (rule, value, callback) => {
        var reg = /(^[1-9]\d*$)/;
        if (reg.test(value)) {
          callback();
        } else {
          return callback(new Error("请输入正确的数量"));
        }
        //正整数校验
    };
var price = (rule, value, callback) => {
      var reg = /(^[1-9]\d*(\.\d{1,2})?$)|(^0(\.\d{1,2})?$)/;
      if (reg.test(value)) {
        callback();
      } else {
        return callback(new Error("请输入正确的价格"));
      }
      //价格校验,没有限制最长输入位数
  };

书写位置

planPrice: [
          { required: true, message: '请输入计划价格', trigger: 'blur' },
          { validator: price, trigger: "blur" },
        ],
inventory: [
          { required: true, message: '请输入库存数量', trigger: 'blur' },
          { validator: inputRules, trigger: "blur" },
        ],

状态动态禁用

 console.log(this.obj.status,'status')
 this.statusList && this.statusList.forEach(element => {
 //status为状态值
if (this.obj.status == '1' || this.obj.status == '3') {
element['disabled'] = this.obj.status == '3' ? true : false
   } else if (this.obj.status == '2') {
     element['disabled'] = element['code'] == 1
    }
    相当于
     if (element['code'] == 1) {
        element['disabled'] = true
      }else  if (element['code'] == 2) {
          element['disabled'] = false
         }else  if (element['code'] == 3) {
           element['disabled'] = false
        }