gpt4 book ai didi

javascript - 模块导出类和函数

转载 作者:行者123 更新时间:2023-12-01 00:22:23 25 4
gpt4 key购买 nike

上视觉课:

class Visual {
constructor() {...}
async fun1() {...}
async fun2() {...}
}
module.exports = Visual;

这里一切正常。但是,我需要更改它,以便 fun1 依赖于 fun2 的输出。

首先,我尝试以“正常”方式使用它,但说该函数未定义。

async fun1() {
const result = await fun2();
...
}

所以我尝试了另一种方法,通过导出将函数移到类之外。

    class Visual {
constructor() {...}
async fun1() {
const result = await fun2();
...
}
}
module.exports = Visual;
module.exports = {
fun2: async function () {...}
};

代码检查器不再说 fun2 未定义,但是当创建新的 Visual 时,它说它不是构造函数。

const visual = new Visual();

是不是导出方式不对?怎么解决呢?

最佳答案

当您想在 javascript 中的同一类中使用某个类中的一种方法时,您必须在其前面加上 this 前缀。

所以const result = wait fun2();变成const result = wait this.fun2();

关于javascript - 模块导出类和函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59305783/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com