首页 文章

Javascript:Webpack Typescript命名空间(内部模块)

提问于
浏览
4

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

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

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

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

1 回答

  • 1

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

    你不需要这样做 . 你应该在任何地方使用 --module:commonjs 并使用bundle for frontend保留它,因为它是使用node运行测试(节点本身理解commonjs) .

    示例

    我用alm https://github.com/alm-tools/alm/这样做

相关问题