【发布时间】:2020-01-17 23:21:39
【问题描述】:
我想在使用 Typescript 和 Webpack 转换为 ES5 的 Web 应用程序中导入 nano-memoize。
npm install nano-memoize- 将
import 'nano-memoize/browser/nano-memoize'添加到源文件中。
这些步骤在 IE 11 中不起作用。页面根本无法加载。
在 IE 11 开发者控制台中检查 nano-memoize/browser/nano-memoize.js 的代码时,我注意到它使用了箭头函数。如果我将 nano-memoize/browser/nano-memoize.js 直接复制到我的源文件夹,它们会被转译为 ES5,并且一切都可以在 IE 11 中运行。
那么为什么 nano-memoize/browser/nano-memoize.js 没有被转译?
构建设置:
网络包:^4.40.2, @babel/核心:^7.4.0, 真棒打字稿加载器:^5.2.1,更新:
这是一个 webpack 配置问题,其中 node_modules 被排除在编译之外。骨架设置是由脚本创建的,我的错误是我从不检查这个。 webpack.config.js 中的以下内容用于 babel-loader 可以选择性地编译所需的 node_modules。替换为所需的模块名称。
{
test: /\.js$/,
exclude: function(modulePath) {
return /node_modules/.test(modulePath) &&
!/node_modules\/<MY_MODULE>/.test(modulePath);
}
}
【问题讨论】:
标签: javascript webpack babeljs