- src/model/engenerated/MyCLabs/Enum/Enum.ts
export namespace MyCLabs {
export namespace Enum {
export namespace Enum {
export class Enum {
value : null;
key : null;
cache : null;
instances : null;
constructor(obj : Enum) {
Object.assign(this,obj);
}
}
}
}
}
- /test.ts
import MyCLabs from "src/model/generated/MyCLabs/Enum/Enum";
let test : MyCLabs.Enum.Enum.Enum = new MyCLabs.Enum.Enum.Enum();
- tsconfig.json
{
"compilerOptions": {
"outDir": "../dist/js/",
"noImplicitAny": true,
"rootDir": ".",
"module": "es6",
"target": "es5",
"jsx": "react",
"allowJs": true,
"moduleResolution": "node"
}
}
我试图在webpack 5中使用TS的命名空间,但是webpack有以下错误:
TS2307找不到模块";路径/to/ts";或相应的类型声明:1个test.ts
当尝试导入所述ts文件时。我说webpack不支持TS命名空间是对的吗?如果是这样的话,当我在一个有几十个同名类的项目中工作时,我该如何最好地模仿命名空间策略
仅仅在tsconfig中有rootDir是不够的:
需要正确解析源目录的2个选项(baseUrl/include(
{
"compilerOptions": {
"outDir": "../dist/js/",
"noImplicitAny": true,
"rootDir": ".",
"baseUrl": "./src/",
"module": "CommonJS",
"target": "es5",
"jsx": "react",
"allowJs": true,
"moduleResolution": "node",
"include": [
"./src/**/*"
]
}
}