无法加载声明文件

时间:2018-06-14 22:32:40

标签: typescript

我想在mocha单元测试中使用declarations/hoge.d.ts文件中声明的枚举值,但它显示ReferenceError: hoge is not defined错误。

我的测试代码是这样的:

import hello from './hello';
import { expect } from 'chai';

describe('Hello function', () => {
    it('should not return hoge', () => {
        const result = hello();
        expect(result).not.equal(hoge.FUGA);
    });
});

声明文件是:

declare enum hoge {
    HOGE,
    FUGA
}

tsconfig.json文件:

{
    "baseUrl": "./",
    "compilerOptions": {
        "target": "es5",
        "module": "commonjs",
        "sourceMap": true
    },
    "files": [
        "declarations/hoge.d.ts"
    ]
}

编译器看起来能够找到hoge.d.ts但无法解析它。 VS代码和正在运行的测试都会发生引用错误。

有人能弄清楚出了什么问题吗?

1 个答案:

答案 0 :(得分:1)

看起来您需要导入定义了hoge的模块。

也许添加

import {hoge} from './hoge'

import {hoge} from 'hoge'

或者可以将其称为hello.hogehoge似乎不在范围内