首页 > 解决方案 > javascript在初始化之前无法访问类

问题描述

我有现有的 javascript 代码,我想调用一些用 typescript 编写的新代码编译为 javascript。我编写了简单的函数,并尝试从该函数中实例化新类。但我得到错误:

未捕获的 ReferenceError:在 runTest (test.ts:16) 初始化之前无法访问“测试”

代码如下:

测试.ts:

class Test
{
    constructor(){}

    render()
    {
        alert("Render!");
    }
}


export function runTest()
{
    let t= new Test();
    t.render();
}

这是编译好的js:

"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.runTest = void 0;
class Test {
    constructor() { }
    render() {
        alert("Render!");
    }
}
function runTest() {
    let t = new Test();
    t.render();
}
exports.runTest = runTest;
//# sourceMappingURL=test.js.map

main.js:有一些调用 runTest() 的函数。

在 index.html 中也引用了这两个文件:

<script type = "text/javascript" src = "script/test.js"></script>
<script type = "text/javascript" src = "script/main.js"></script>

它调用 new Test() 失败...

函数中的一切都有效,只是我无法实例化任何类。它失败并出现相同的错误。

初始化?类什么时​​候初始化?它在调用之前声明。任何想法?

标签: javascripttypescriptclassinstance

解决方案


推荐阅读