Javascript:Webpack + Typescript + Namespace(内部模块)

时间:2016-04-27 15:58:56

标签: javascript typescript webpack typescript1.8

我们正在尝试使用Webpack来编译typescript代码,其中我们用命名空间(定义为内部模块)替换“module”(现在定义为外部模块)。

此更改主要是为了与typescript的建议保持一致,并确保在Karma上运行基于Jasmine的单元测试不需要依赖于“require”。已配置了Karma-typescript预处理器,测试用例运行正常,无需“require”。

对命名空间的更改导致我们删除对require的依赖,当它通过tsc进行单元测试和代码编译时非常有效。但是在使用typescript加载器通过Webpack进行编译时(我已经尝试过ts-loader,Webpack-typescript),输出只包含入口ts文件的代码而不是其依赖项。 Tsc已经有一个选项(--outFile)将输出连接成一个文件,但两个加载器都不使用它。

是否有方法(加载器或加载器的配置)来解析依赖关系并将其捆绑到Webpack生成的单个输出js中?

1 个答案:

答案 0 :(得分:1)

  

此更改主要是为了符合打字稿的建议,并确保在Karma上运行基于Jasmine的单元测试不需要依赖“require”

你不需要这样做。您应该在任何地方都使用--module:commonjs并使用 bundle 作为前端+保留它,因为它是使用节点运行测试(节点本身理解commonjs)。

实施例

我使用alm https://github.com/alm-tools/alm/

执行此操作