Javascript 子类的方法是否可以通过代理类重写
是否能够基于代理捕获的propName重写内部类方法代码,并在目标上下文中执行它 例如。 如果我写下以下一行:Javascript 子类的方法是否可以通过代理类重写,javascript,proxy,Javascript,Proxy,是否能够基于代理捕获的propName重写内部类方法代码,并在目标上下文中执行它 例如。 如果我写下以下一行: LoginPage.login(值) 将执行采购订单的登录方法 class LoginPage extends Base { get loginField() { return $('selector'); } async login(value) { await loginField.set(value); } } class Login
LoginPage.login(值)代码>
将执行采购订单的登录
方法
class LoginPage extends Base {
get loginField() {
return $('selector');
}
async login(value) {
await loginField.set(value);
}
}
class LoginPage extends Base {
get loginField() {
return $('selector');
}
async login(value) {
await loginField.browserInstance.set(value);
}
}
如果我打电话给
LoginPage.browserInstance.login(值)代码>然后将执行以下操作
class LoginPage extends Base {
get loginField() {
return $('selector');
}
async login(value) {
await loginField.set(value);
}
}
class LoginPage extends Base {
get loginField() {
return $('selector');
}
async login(value) {
await loginField.browserInstance.set(value);
}
}
我尝试将原始方法转换为字符串,修改它,然后使用eval
和new function
将其转换回函数,然后在LoginPage的上下文中执行它,但没有成功。我不想为应用程序中的每个类方法添加条件,而是想找出一种方法,以不同的方式处理这些问题
提前谢谢你的建议