javascript - 在 TypeScript 中使用 JavaScript 类

标签 javascript node.js typescript

我在将 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/

相关文章:

javascript - Nightmare.js无法保存登录 session

node.js - 无法在系统重新启动 Ubuntu Crontab 时启动 Node

javascript - 每次生产 Kafka 消息时都需要连接吗?

javascript - TypeScript 和 this 关键字(SharePoint 框架和 Vue)

javascript - mongoDB 连接(通过 Node.js 驱动程序)没有给我控制台日志消息

javascript - 未捕获的类型错误 : undefined is not a function :/

javascript - 通过组合相同元素来变换数组

javascript - Node.js - 将 xlsx 保存到磁盘

javascript - 一个 HTTP 请求和一条 WebSocket 消息,然后断开连接——网络上什么更昂贵?

angular - 如何使用 RxJS 在 Angular 6 中发出一系列 http 请求