Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/typescript/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Typescript调用当前作用域中的javascript函数_Javascript_Typescript - Fatal编程技术网

Typescript调用当前作用域中的javascript函数

Typescript调用当前作用域中的javascript函数,javascript,typescript,Javascript,Typescript,我正在将一个项目从JS迁移到Typescript。但是新的TS类应该与以前的JS共存。作用域中有一个名为verifyActivityChange()的函数。在javascript中,此函数已在app.js文件中声明,可以从任何地方调用 如何从Typescript类调用此函数 在一些TS文件中,我能够 // @ts-ignore import * as appjs from "./app.js"; appjs.verifyActivityChange()

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

如何从Typescript类调用此函数

在一些TS文件中,我能够

    // @ts-ignore
    import * as appjs from "./app.js";
    appjs.verifyActivityChange();
请注意,如果这是正确的,因为我必须忽略编译错误。但是如果我在一个类中执行相同的过程,我会出现一个错误appjs没有构造函数

编辑如何从类调用函数

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

    }

}

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

,然后我认为问题更多的是范围。如何从typescript类调用函数?知道app.js已包含在index.htmlNote中,我必须将app.js转换为模块,否则我无法导入typescript类