Javascript TypeError:loginScreen.visibleOfWelcome不是函数
我想访问javascript类中定义的方法。在运行代码时,我得到的错误如下 TypeError:loginScreen.visibleOfWelcome不是函数 这是我的代码: firstPage.CCC.jsJavascript TypeError:loginScreen.visibleOfWelcome不是函数,javascript,export,detox,module-export,Javascript,Export,Detox,Module Export,我想访问javascript类中定义的方法。在运行代码时,我得到的错误如下 TypeError:loginScreen.visibleOfWelcome不是函数 这是我的代码: firstPage.CCC.js module.exports = class LoginScreen { get welcome() { return element(by.id("welcome")); } visibleOfWelcome() { expect
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();
});
})
如果我写等待loginScreen.visibleOfWelcome()代码>然后我得到一个错误
TypeError:loginScreen.visibleOfWelcome不是函数
如果写入等待loginScreen.visibleOfWelcome代码>然后我的代码在文件中工作
知道为什么吗?我想调用aswait loginScreen.visibleOfWelcome()
您尚未实例化该类登录屏幕
,因此无法访问它的非静态成员,如visibleOfWelcome
。您必须在导出之前或导入之后创建类的实例,才能访问其成员(这就是为什么它是OOP)
您尚未实例化类LoginScreen
,因此无法访问它的非静态成员,如visibleOfWelcome
。您必须在导出之前或导入之后创建类的实例,才能访问其成员(这就是为什么它是OOP)
尝试以下解决方案:
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();
});
})
现在您可以在这里执行以下操作:
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();
});
})
希望它对您有用。尝试以下解决方案:
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();
});
})
现在您可以在这里执行以下操作:
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();
});
})
希望它能为您工作。谢谢,它现在正在工作。。我没有添加var loginScreen=new loginScreen()代码>添加此行后,它将正常工作。谢谢,Shubham。这行行行吗:expect(this.welcome).tobevicible()代码>?我想这是一个函数。欢迎
将是这里的一个函数,可以期望
与函数一起工作吗?或者它需要一个元素
?谢谢,它现在正在工作。。我没有添加var loginScreen=new loginScreen()代码>添加此行后,它将正常工作。谢谢,Shubham。这行行行吗:expect(this.welcome).tobevicible()代码>?我想这个。欢迎
将是这里的一个函数,可以期望
使用函数还是需要元素
?感谢您解释创建对象的必要性。感谢您解释创建对象的必要性。