静态变量在打字稿中被初始化为未定义

时间:2020-09-30 06:26:03

标签: javascript node.js typescript

我对Typescript和node.js有点陌生。我在类中很少有声明为static的变量,这些变量将在调用函数时进行初始化。我正在尝试在另一堂课中访问它们。尝试访问这些静态变量时,即使它们已初始化,有时也会返回undefined。请在下面找到我的代码:

Test.ts

describe('Test', function () {

let testUtil: TestUtil,

before(async function () {
        await Constants.init_TestConfig();
        testUtil = new TestUtil();
    });

it('Step 1', async function () {
        //Constants.sURL returning the initialized variable
        let url = await Constants.sURL;
        console.log(url);
        await testUtil.loadURL();
    });

});

TestUtil.ts

export class TestUtil{

public async loadURL(){
        //Constants.sURL returing undefined here
        let url = await Constants.sURL;
        console.log(url);
    }
}

Constants.ts

export class Constants{

public static sURL:string;

public static async init_TestConfig(){
    //initialize URL
    this.sURL = "some URL";
    }
}

Constants.sURL在尝试从Test.ts访问时工作正常,但是当我尝试从任何其他类访问同一内容时,它返回未定义。 Constants.ts文件中声明的任何其他变量也是如此。

0 个答案:

没有答案