zoukankan      html  css  js  c++  java
  • vue 表单验证 rule message bug All In One

    vue 表单验证 rule message bug All In One

    有 rules message ❌

        <el-form-item
            class="is-required"
            label="应用名"
            prop="appName"
            :rules="[
                {
                    required: true,
                    message: '请输入应用名',
                    trigger: 'blur',
                    validator: validateAppName,
                },
            ]">
            <el-input
                style=" 300px;"
                placeholder="4-20个字符,中文占两个字符"
                v-model="ruleForm.appName"
                @change="appNameChange"
            />
        </el-form-item>
    
    
        appNameChange (value) {
            if(value) {
                this.validateFieldByKey('appName');
            }
        },
        validateAppName  (rule, value, callback) {
            const len = Util.getByteLen(value.trim());
            const wordList = this.prohibitedList.filter(item => value.includes(item));
            if (value === '') {
                // callback(new Error(rule.message));
                callback(new Error('请输入应用名'));
            } else if ( len < 4 || len > 20) {
                callback(new Error('4-20个字符,中文占两个字符,请正确输入'));
            } else if (wordList.length > 0) {
                callback(new Error(`包含违禁词:${wordList.join('、')}`));
            } else {
                callback();
            };
        },
    
    

    注释掉 rules message ✅

        <el-form-item
            class="is-required"
            label="应用名"
            prop="appName"
            :rules="[
                {
                    required: true,
                    // message: '请输入应用名',
                    trigger: 'blur',
                    validator: validateAppName,
                },
            ]">
            <el-input
                style=" 300px;"
                placeholder="4-20个字符,中文占两个字符"
                v-model="ruleForm.appName"
                @change="appNameChange"
            />
        </el-form-item>
    
    
        appNameChange (value) {
            if(value) {
                this.validateFieldByKey('appName');
            }
        },
        validateAppName  (rule, value, callback) {
            const len = Util.getByteLen(value.trim());
            const wordList = this.prohibitedList.filter(item => value.includes(item));
            if (value === '') {
                // callback(new Error(rule.message));
                callback(new Error('请输入应用名'));
            } else if ( len < 4 || len > 20) {
                callback(new Error('4-20个字符,中文占两个字符,请正确输入'));
            } else if (wordList.length > 0) {
                callback(new Error(`包含违禁词:${wordList.join('、')}`));
            } else {
                callback();
            };
        },
    
    

    refs



    ©xgqfrms 2012-2020

    www.cnblogs.com/xgqfrms 发布文章使用:只允许注册用户才可以访问!

    原创文章,版权所有©️xgqfrms, 禁止转载 ️,侵权必究⚠️!


    xgqfrms
  • 相关阅读:
    别让代码执行不必要的路径和让数据绑定执行了多次
    使用Excel学习英语单词
    如何通过访问记录改善网站质量
    Vs.net2005强势功能:数据源
    新产品:英语单词查找返回表格式结果
    为什么Cpu不能以100%运行 [不完全版]
    乐透彩票研究分析系统
    集成电路发明者杰克·基尔比 IC Inventor Jack Kilby
    ZigBee技术及其应用
    Unix传奇(上篇)
  • 原文地址:https://www.cnblogs.com/xgqfrms/p/15562755.html
Copyright © 2011-2022 走看看