Javascript Jquery验证程序更改`this`ES6代码
我有es6类的构造函数和验证方法Javascript Jquery验证程序更改`this`ES6代码,javascript,jquery,ecmascript-6,jquery-validate,es6-class,Javascript,Jquery,Ecmascript 6,Jquery Validate,Es6 Class,我有es6类的构造函数和验证方法 class Popups { constructor(selector) { this.app = selector; } validate() { $.validator.addMethod('atLeastOneLowercaseLetter', (value, element) => { return this.optional(element) || /[a-z]+/.test(value);
class Popups {
constructor(selector) {
this.app = selector;
}
validate() {
$.validator.addMethod('atLeastOneLowercaseLetter', (value, element) => {
return this.optional(element) || /[a-z]+/.test(value);
// how to replace `this` ??
},
'Must have at least one lowercase letter'
);
}
}
My此
引用了我的类,但我需要使用我的验证表单获取$.validator
。我怎样才能替换这个
如果我写
$.validator.optional(element)| |/[a-z]+/.test(value)
我会得到错误$。validator.optional不是一个函数
在这种情况下,不要使用函数,因为它没有自己的这个。改为使用普通函数表达式作为回调。对不起,我不使用普通函数
这个答案不值得否决,因为这是一个备选方案。@Паааааааааааааааааа,当禁止使用普通函数时
我假设您知道箭头函数是如何工作的,因此,您可以直接在该处理程序中使用对象$。验证程序
。抱歉,我不使用普通函数
。我需要“=>”@Ele$。validator
没有我的表单,我不知道如何将我的表单发送到$。validator
@你不能使用=>。为什么你认为你“需要”它,为什么你不直接使用一个有效的功能呢?