gpt4 book ai didi

javascript - TypeScript:TypeError:App 不是构造函数

转载 作者:搜寻专家 更新时间:2023-10-30 21:19:06 27 4
gpt4 key购买 nike

我刚开始使用 typescript 并尝试为 typescript 类创建一个实例,但我没有成功。

下面是我的文件

应用.ts

import { EventEmitter } from 'events';

interface Emitter extends EventEmitter {

}
class App {
constructor(protected app: Emitter){}
}

export default = App;

我正在使用 tsc 命令生成 App.ts 到 App.js 文件。该文件在 dist 文件夹中生成为 App.js

我有另一个名为 Test.js 的文件

在 Test.js 中,我正在导入生成的 App.js 文件并为其创建了一个实例,如下所示,但出现以下错误

TypeError: App is not a constructor

测试.js

const App = require("./dist/App);

module.exports = function(app){
const appInstance = new App(app)
}

虽然我在 App.ts 文件中有可用的构造函数,但我不明白为什么会抛出这样的错误。

Am I doing something wrong in App.ts file and that's why I get the above error?

How can I resolve this issue?

最佳答案

Typescript 将 export default = App; 编译为具有属性 default 的对象的导出。

你可以用两种方法解决这个问题:

  1. 将 js 文件中的要求更改为:const App = require("./dist/App).default;
  2. 添加到您的 tsconfig.json 文件中 compilerOptions allowSyntheticDefaultImports: false

关于javascript - TypeScript:TypeError:App 不是构造函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52992813/

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