我在将 TypeScript 引入我们的 JavaScript 项目时遇到了问题。 首先,我只想在我的代码部分使用 TypeScript,而 JavaScript 保持不变。
现在我尝试在我的 TypeScript 代码中使用 JavaScript 类,但最近几天我没有找到解决方案。
导入 JavaScript 的 TypeScript 类的头部:
import { BaseLogic } from "../baseLogic";
export class ClaimLogic extends BaseLogic {
...
JavaScript 类(“baseLogic.js”):
module.exports = class BaseLogic {
constructor(meta, logger) {
...
我的 *.d.ts 文件(“baseLogic.d.ts”):
export class BaseLogic {
meta: any;
log: any;
constructor(meta: any, logger: any)
}
编译后的 JavaScript 头部:
const baseLogic_1 = require("../baseLogic");
class ClaimLogic extends baseLogic_1.BaseLogic {
...
正如您在编译的 JavaScript 中看到的那样,使用了 baseLogic_1.BaseLogic。 这会导致以下错误:
TypeError: Class extends value undefined is not a constructor or null
在 JavaScript 文件中的 extends 关键字后只有 baseLogic_1 一切都很好。
我不知道解决方案,希望您能帮助我!
最佳答案
您的导入假设是import * as BaseLogic from "../baseLogic";
。
通过这种方式,您将获得放置在 module.exports
上的类。
关于javascript - 在 TypeScript 中使用 JavaScript 类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45752134/