Gulp + Webpack ts loader 移除 requirejs 和定义模块名称注解
Posted
技术标签:
【中文标题】Gulp + Webpack ts loader 移除 requirejs 和定义模块名称注解【英文标题】:Gulp + Webpack tsloader removes require.js amd define moduleName annotation 【发布时间】:2020-04-07 04:44:38 【问题描述】:在 Typescript 项目中,编译后的代码应该有一行:
(function webpackUniversalModuleDefinition(root, factory)
...
define("moduleName", [], function () ... );
使用 amd 的定义(异步模块定义)
我用 gulp + webpack ts-loader 编译 ts 文件并获取
define([], function () ... );
所以我需要手动添加moduleName,有没有办法自动添加(或者干脆不删除名称)?
我尝试搜索它,ng-annotate 或 uglify mangle:false 或 amd-optimize 但它们不起作用。 我可能可以用 gulp-replace 对其进行硬编码,但这可能不是一个好主意。
在我的 webconfig 中,我有:
library: 'moduleName',
libraryTarget: 'umd'
谁能帮我完成这个小任务?
【问题讨论】:
【参考方案1】:找到了,我需要为我的 webpack 文件添加umdNamedDefine: true
。
见here和here
【讨论】:
以上是关于Gulp + Webpack ts loader 移除 requirejs 和定义模块名称注解的主要内容,如果未能解决你的问题,请参考以下文章
模块解析失败:Webpack Typescript Loader 中出现意外的令牌
gulp + webpack + css-loader + typescript:“找不到模块”
ts-loader vs babel-loader 在 Typescript 中使用 webpack