vue 表单验证 rule.message bug All In One
vue 表单验证 rule.message bug All In One
不使用 rule.message ?
    validateAmount (rule, value, callback) {
        if (value === '') {
            callback(new Error('请输入预算金额'));
        } else if (value < this.amountValue || value > 9999999.99 || !Util.validAmount(value)) {
            callback(new Error(`预算不少于${this.amountValue}元,不超过9999999.99元,仅支持最多2位小数`));
        } else {
            callback();
        }
    },
使用 rule.message ?
    budgetAmountValidate (rule, value, callback) {
        const minValue = this.ruleForm.groupBudgetMode === 'BUDGET_MODE_DAY' ? 300 : 800;
        const invalid = (value < minValue || value > 9999999.99 || !Util.validAmount(value));
        if (value === '') {
            callback(new Error(rule.message));
        } else if (invalid) {
            console.log('invalid', invalid);
            const message = `预算不少于${minValue}元,不超过9999999.99元,仅支持最多2位小数`;
            // rule.message 不更新
            callback(new Error(message));
        } else {
            callback();
        }
    },
使用 rule.message ?
    budgetAmountValidate (rule, value, callback) {
        const minValue = this.ruleForm.groupBudgetMode === 'BUDGET_MODE_DAY' ? 300 : 800;
        const invalid = (value < minValue || value > 9999999.99 || !Util.validAmount(value));
        if (value === '') {
            callback(new Error(rule.message));
        } else if (invalid) {
            console.log('invalid', invalid);
            const message = `预算不少于${minValue}元,不超过9999999.99元,仅支持最多2位小数`;
            // 覆盖 rule.message ?
            rule.message = message;
            callback(new Error(message));
        } else {
            callback();
        }
    },
    budgetAmountValidate (rule, value, callback) {
        const minValue = this.ruleForm.groupBudgetMode === 'BUDGET_MODE_DAY' ? 300 : 800;
        const invalid = (value < minValue || value > 9999999.99 || !Util.validAmount(value));
        if (value === '') {
            // callback(new Error(rule.message));
            const message = `请输入预算金额`;
            // 覆盖 rule.message ?
            rule.message = message;
            callback(new Error(message));
        } else if (invalid) {
            console.log('invalid', invalid);
            const message = `预算不少于${minValue}元,不超过9999999.99元,仅支持最多2位小数`;
            // 覆盖 rule.message ?
            rule.message = message;
            callback(new Error(message));
        } else {
            callback();
        }
    },
demo
    
        
            
                
                 
             
            元
         
     
refs
?xgqfrms 2012-2020
www.cnblogs.com/xgqfrms 发布文章使用:只允许注册用户才可以访问!
原创文章,版权所有??xgqfrms, 禁止转载 ???,侵权必究??!