首页 > 解决方案 > Typescript 在当前范围内调用 javascript 函数

问题描述

我正在将一个项目从 JS 迁移到 Typescript。但是新的 TS 类应该与以前的 JS 共存。范围内有一个名为 verifyActivityChange() 的函数。在 javascript 中,此函数已在 app.js 文件中声明,并且可以从任何地方调用。

如何从 Typescript 类中调用此函数?

在一些 TS 文件中我能够做到

    // @ts-ignore
    import * as appjs from "./app.js";
    appjs.verifyActivityChange();

请注意这是否正确,因为我不得不忽略编译错误。但是,如果我在一个类中执行相同的过程,则会出现错误 appjs dosn't have a constructor。

编辑如何从类中调用函数

    import {verifyActivityChange} from "./app.js";
    
    export class ViewController {
    
        public update(){
    
    verifyActivityChange(); //how can I call this function ? it's on my page DOM

    }

}

标签: javascripttypescript

解决方案


您可以在 TS 代码中导入 JS 文件,但您必须通知编译器您正在尝试这样做。您可以使用选项编译(在此处--allowJs阅读更多内容)或在文件中指定此选项,在此处阅读更多内容)tsconfig.json


推荐阅读