TypeError: loginScreen.visibleOfWelcome is not a function
TypeError: loginScreen.visibleOfWelcome is not a function
我想访问 javascript class 中定义的方法。 运行 代码时,我收到错误
TypeError: loginScreen.visibleOfWelcome is not a function
这是我的代码:
firstPage.CCC.js
module.exports = class LoginScreen {
get welcome() {
return element(by.id("welcome"));
}
visibleOfWelcome() {
expect(this.welcome).toBeVisible();
}
}
firstTest.specs.js
var loginScreen = require("./firstPage.CCC.js");
describe('Example', () => {
beforeEach(async () => {
await device.reloadReactNative();
});
it('should have welcome screen', async () => {
await loginScreen.visibleOfWelcome();
});
})
如果我写 await loginScreen.visibleOfWelcome();
然后我得到一个错误
TypeError: loginScreen.visibleOfWelcome is not a function
if write await loginScreen.visibleOfWelcome;
然后我的代码工作文件。
知道为什么吗?我想打电话给 await loginScreen.visibleOfWelcome();
您尚未实例化 class LoginScreen
,因此您无法访问它的 none 静态成员,例如 visibleOfWelcome
。您必须在导出之前或导入之后创建 class 的实例才能访问它的成员(这就是为什么它是 OOP)。
module.exports = new LoginScreen();
// Or
var LoginScreen = require("./firstPage.CCC.js");
var loginScreen = new LoginScreen();
尝试以下解决方案:
export class LoginScreen {
get welcome() {
return element(by.id("welcome"));
}
visibleOfWelcome() {
expect(this.welcome).toBeVisible();
}
}
现在您可以这样做:
var LoginScreen = require("./firstPage.CCC");
var loginScreen= new LoginScreen();
describe('Example', () => {
beforeEach(async () => {
await device.reloadReactNative();
});
it('should have welcome screen', async () => {
await loginScreen.visibleOfWelcome();
});
})
希望对你有用。
我想访问 javascript class 中定义的方法。 运行 代码时,我收到错误
TypeError: loginScreen.visibleOfWelcome is not a function
这是我的代码: firstPage.CCC.js
module.exports = class LoginScreen {
get welcome() {
return element(by.id("welcome"));
}
visibleOfWelcome() {
expect(this.welcome).toBeVisible();
}
}
firstTest.specs.js
var loginScreen = require("./firstPage.CCC.js");
describe('Example', () => {
beforeEach(async () => {
await device.reloadReactNative();
});
it('should have welcome screen', async () => {
await loginScreen.visibleOfWelcome();
});
})
如果我写 await loginScreen.visibleOfWelcome();
然后我得到一个错误
TypeError: loginScreen.visibleOfWelcome is not a function
if write await loginScreen.visibleOfWelcome;
然后我的代码工作文件。
知道为什么吗?我想打电话给 await loginScreen.visibleOfWelcome();
您尚未实例化 class LoginScreen
,因此您无法访问它的 none 静态成员,例如 visibleOfWelcome
。您必须在导出之前或导入之后创建 class 的实例才能访问它的成员(这就是为什么它是 OOP)。
module.exports = new LoginScreen();
// Or
var LoginScreen = require("./firstPage.CCC.js");
var loginScreen = new LoginScreen();
尝试以下解决方案:
export class LoginScreen {
get welcome() {
return element(by.id("welcome"));
}
visibleOfWelcome() {
expect(this.welcome).toBeVisible();
}
}
现在您可以这样做:
var LoginScreen = require("./firstPage.CCC");
var loginScreen= new LoginScreen();
describe('Example', () => {
beforeEach(async () => {
await device.reloadReactNative();
});
it('should have welcome screen', async () => {
await loginScreen.visibleOfWelcome();
});
})
希望对你有用。