vue中拿不到data的数据作为参数传入函数

这里用到了iviews ui插件,当在输入框输入数据时,弹出不同的校验信息提示,当输入框失去焦点时,会触发validator对应的函数

我自己自定义了一个js文件validFunction.js,里面有一个函数:

export function validateInfo(validItem) {
    var validateInfoObj = {        
        validatePassCheck: function (rule, value, callback) {
            var validType = "pwdCheck";
            pwdCK=value;
            if (value === '') {
                callback(new Error(showMessage(validType, 0)));
            } else if (value !== pwd) { //value !== this.formCustom.passwd
                console.log(validItem);
                console.log(' value='+value );
                console.log( 'pwd='+pwd );
                callback(new Error(showMessage(validType, 1)));

            } else {
                callback();
            }
        },
    }

    return validateInfoObj;
}
//selfFormRule.vue文件,其中data里面的数据:
data () {    
            return {//此处只列出passwdCheck,还有其他数据,不一一列出
                formCustom: {
                    passwdCheck: '',

                },
                ruleCustom: {
                    passwdCheck: [
                    //问题:this.formCustom识别不到,参数传不进去js的函数中
                        { validator: this.validateInfo(this.formCustom).validatePassCheck, trigger: 'blur' }
                    ],

                }
            }
}
阅读 4.6k
2 个回答

可以放到钩子函数中初始化

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题