输入框限定100个汉字或200字符

  

  el-form-item(label="消息内容", prop="content")
     el-input( v-model="addPForm.content", :autosize="{ minRows: 3, maxRows: 4}", type="textarea",placeholder="100汉字以内,支持汉字、特殊字符、数字", :disabled="isonCopyClick")

  

  const wordLimit = (rule, value, callback) => {
            const mailzh = /^[u4E00-u9FA5]{0,}$/;
            let num = 0;
            if (!value) {
                return callback(new Error('请输入消息内容'));
            }
            for (let i = 0; i < value.length; i++) {
                // 使用正则表达式,判断字符是否为汉字编码
                const matches = mailzh.test(value[i]);
                if (matches) {
                    // 如果是汉字
                    num++; // 则累加
                }
            }
            setTimeout(() => {
                if (num + (value.length - num) / 2 <= 100) { 
                    callback();
                } else {
                    callback(new Error('请输入100汉字或者200字符以内消息内容'));
                }
            }, 100);
        };
 
  
  rules: {
                content: [{ validator: wordLimit, trigger: 'blur' }],
            },
原文地址:https://www.cnblogs.com/J-Luck/p/13457833.html