Nodejs>在两个地方进口的一类 - 在一个地方而不是在另一个地方工作

时间:2017-12-07 19:55:16

标签: javascript node.js node-modules webdriver-io

项目背景: 技术: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
}

我尝试了不同的导出和导入组合,但找不到解决方案。

0 个答案:

没有答案