我正在使用webpack开发一个新项目。这是我第一次尝试使用此工具。
从一年开始,我就一直使用Typescript(针对angularJS 1.5)进行开发,而我的命名空间从未遇到任何问题。
// src/App/Core/Http/Test.ts
export namespace App.Core.Http {
export class Test {
public attr:any;
}
}
// src/App/Bootstrap.ts
import { App } from "./Core/Http/Test";
let testInstance = new App.Core.Http.Test();
Run Code Online (Sandbox Code Playgroud)
如果我要导入更多文件怎么办。我不能导入多个“ App”变量,并且每次处理导入时都不想创建别名。
这是我不想要的情况,我想修复:
// src/App/Bootstrap.ts
import { App } from "./Core/Http/Test";
import { App as App2 } from "./Core/Http/Test2"; // How can I import properly my namespace
let testInstance = new App.Core.Http.Test(),
test2Instance = new App2.Core.Http.Test2();
Run Code Online (Sandbox Code Playgroud)
我是否对Webpack感到有些困惑或困惑?如何像使用webpack的PHP那样使用名称空间?
编辑2016/22 / 07,6:26 PM
我了解到无法通过Webpack使用名称空间。为什么呢 因为每个.ts文件都被视为具有自己范围的模块。
需要开发模块。
我找到了一种使用模块而不是名称空间来清除文件调用的解决方案。
就我而言,我有App / Core,其中包含Http,Service,Factory,Provider ...文件夹。在Core文件夹的根目录下,我创建了一个index.ts文件,该文件使用模块体系结构导出所有需要的文件。让我们来看看。
// …
Run Code Online (Sandbox Code Playgroud)