【发布时间】:2017-02-16 15:48:32
【问题描述】:
当我尝试在 OSX 上编译我的 webpack 构建时,它会给出一个奇怪的错误,但在 Windows 上不会,也从未发生过。
在“{”上出错:/* harmony default export */ __webpack_exports__["default"] = class {
【问题讨论】:
当我尝试在 OSX 上编译我的 webpack 构建时,它会给出一个奇怪的错误,但在 Windows 上不会,也从未发生过。
在“{”上出错:/* harmony default export */ __webpack_exports__["default"] = class {
【问题讨论】:
如果您使用的是 webpack 2,那么您很可能依赖于某些具有 jsnext:main 配置选项的模块,以将其代码作为 ES6 模块提供。在这些情况下,webpack 2 使用它们,它工作得很好,直到你尝试使用 Uglify,它无法处理 ES6 代码。
你可能从 Babel 加载中排除你的 node_modules,你也应该这样做,但要让它工作,你需要明确告诉 webpack 包含这个 jsnext:main 模块。
我在使用 preact-compat 时遇到了这个问题并像这样解决了它:
module: {
rules: [
{
test: /\.js$/,
loader: 'babel-loader',
include: [
path.resolve(__dirname, './src'),
path.resolve(__dirname, './node_modules/preact-compat/src')
]
}
]
}
【讨论】:
exclude: /node_modules\/(?!@company\/private-module)/