项目背景: 技术:NodeJs,Webdriverio,Mocha,Chai,(在IDE中配置ECMA6) ------ 文件:product-page.js
var/let Component = require(‘./component.js’);
Class ProductPage{
constructor(productType){
this. productType = productType;
}
getFirstProduct(){
return new Component(first);
}
}
module.exports = {
ProdPage : function(pType){
if(pType === "type"){
return new ProductPage(type);
}else {
return new ProductPage();
}
}
};
------ 文件:component.js
var/let ProductPage = require(‘./product-page.js’). ProdPage;
Component(){
constructor(comp){
this.comp = comp;
}
action(){ //some action; return this; }
clickToListProducts(type){
return new ProductPage(aType); // This line does not returns ProdutPage, Error: ProductPage is not a function
}
}
module.exports = Component;
------ 文件:sample.js
var/let ProductPage = require(‘./product-page.js’). ProdPage;
SampleTest(){
describe(){
it(){
SignInPage.signin();
ProductPage()
. getFirstProduct(first)
.action()
. clickToListProducts(sometype) // receives error from component page
}
}
}
------
此处在SampleTest类中导入的产品页面工作正常,但无法识别在Component导入的产品页面。
但是下面的代码工作正常,因此我确认ProductPage接受无参数和单个参数
it(){
SignInPage.signin();
ProductPage()
. getFirstProduct(first)
.action()
ProductPage(sometype) // works fine
}
我尝试了不同的导出和导入组合,但找不到解决方案。