Javascript:Webpack+Typescript+Namespace(内部模块)
Javascript: Webpack+Typescript+Namespace (internal module)
我们尝试使用 Webpack 编译打字稿代码,其中我们将"模块"(现在定义为外部模块)替换为命名空间(定义为内部模块)。
进行此更改主要是为了符合打字稿的建议,并确保在 Karma 上运行基于 Jasmine 的单元测试不需要对"require"的依赖。Karma-typescript 预处理器已经配置好,测试用例运行良好,不需要"require"。
对命名空间的更改导致我们删除了对 require 的依赖,当涉及到单元测试和通过 tsc 编译代码时,它运行良好。但是在使用打字稿加载器通过 Webpack 进行编译时(我尝试过 ts-loader、Webpack-typescript),输出只包含条目 ts 文件的代码,而不是它的依赖项。Tsc 已经有一个选项(--outFile)将输出连接成一个文件,但两个加载器都不使用它。
有没有办法(加载器或加载器的配置)来解决依赖关系并将其捆绑到 Webpack 生成的单个输出 js 中?
进行此更改主要是为了符合打字稿的建议,并确保在 Karma 上运行基于 Jasmine 的单元测试不需要依赖"require"。
你不需要这样做。您应该在任何地方使用 --module:commonjs
并为前端捆绑 + 保持原样使用 node 运行测试(节点本机理解 commonjs)。
例
我用施舍 https://github.com/alm-tools/alm/来做到这一点
相关文章:
- 从模块内部访问Express装载路径
- 如何使用jasmine节点监视依赖模块内部的方法
- 使用在子模块内部的父模块上定义的常量's配置
- Javascript:Webpack+Typescript+Namespace(内部模块)
- 是JSHint“;已定义“;IIFE模块内部的错误确实有效
- 从函数内部、类内部、模块内部访问 Angular 服务
- 从模块内部引用特定的表单元素
- 从节点模块内部返回嵌套函数
- 节点:需要模块内部功能
- 在打字稿内部模块中使用外部打字稿库
- 在打字稿中隐式引用另一个内部模块
- React 模块内部的条件
- 如何限制节点对内部节点模块的访问
- Jest:找不到要测试的模块内部所需的模块(相对路径)
- Requirejs:等待模块内部的require函数
- 如何读取angular模块内部的json配置文件
- NPM不工作(无法找到模块'内部/fs'- nodejs)
- RequireJS——调用模块内部的另一个属性
- 要求一个模块从另一个模块内部出错
- Python模块内部的Javascript问题