实例化新函数无法访问内部函数

时间:2018-03-11 17:49:01

标签: javascript ecmascript-6

这是一个令人沮丧的问题,我坚持下去。我正在导出一个具有相当严格结构的父函数,以便进行库模拟。

do

我导出它,然后导入它,创建一个新的函数实例,这样我就可以设置我希望增加的属性,也可以通过函数的构造来设置。但是代码然后需要一个名为fetch的函数。

我需要能够称之为:

const responses = require("../responses/index.js");
function fetch (
    first = "contactsMultiple",
    second = "passwordFail",
    third = "contactsMultiple") {

this.first = first;
this.second = second;
this.third = third;
this.iteration = 1;

this.fetch = () => {
    let body;
    switch (this.iteration) {
        case 1 :
            body = responses.contacts[this.first];
            break;
        case 2 :
            body = responses.password[this.second];
            break;
        case 3 :
            body = responses.contacts[this.third];
            break;
        default:
            body = responses.contacts["contactsMultiple"];
            break;
    }

    const response = {
        status: 200,
        statusText: "OK",
        json: () => {
            return body;
        }
    };

    this.iteration++;
    return response;
}}
module.exports = fetch;

然后将const Fetch = new fetch(); 传递给现有的类。

如果我记录这个新函数,我可以看到它有一个类型函数的fetch属性。但我一直得到Fetch

我错过了什么?

非常感谢

0 个答案:

没有答案