Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/webpack/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Webpack 意外标记:来自UglifyJs的运算符(>;)_Webpack_Vuejs2_Vue Loader_Babel Loader - Fatal编程技术网

Webpack 意外标记:来自UglifyJs的运算符(>;)

Webpack 意外标记:来自UglifyJs的运算符(>;),webpack,vuejs2,vue-loader,babel-loader,Webpack,Vuejs2,Vue Loader,Babel Loader,我有两个Vue Cli网页包项目(ClientApp和Lib)。 Lib是我的组件库(与其他项目共享) 问题 当我构建我的项目客户端Appnpm run build时,出现以下错误: ERROR in static/js/app.d08a24ce0e8d0438ce68.js from UglifyJs Unexpected token: operator (>) [C:/.../Lib/src/tools/escape-key.js:3,0][static/js/app.d08a24ce

我有两个Vue Cli网页包项目(ClientApp和Lib)。 Lib是我的组件库(与其他项目共享)

问题 当我构建我的项目客户端App
npm run build
时,出现以下错误:

ERROR in static/js/app.d08a24ce0e8d0438ce68.js from UglifyJs
Unexpected token: operator (>) [C:/.../Lib/src/tools/escape-key.js:3,0][static/js/app.d08a24ce0e8d0438ce68.js:17468,38]
问题 错误似乎来自文件
escape key.js
中的箭头函数。 这是ES6语法,UglifyJS无法解析。 巴贝尔不应该在丑八怪之前先走一步吗? 请注意,is可以很好地处理
*.vue
文件

项目结构 ClientApp的webpack.base.conf.js文件 注意Lib有一个别名

resolve: {
    extensions: ['.js', '.vue', '.json'],
    alias: {
      '@': resolve('src'),
      '~lib': path.join(__dirname, '../../lib/src'),
    }
  },

如果需要,请随时询问更多详细信息。

在更改我的babel loader配置后,它成功了

巴贝尔加载器配置
您正在使用的uglify版本可能不支持ES6

es6版本是否为现在的版本

如果您想使用该网页包,请务必注意有关es6的安装部分

重要该插件对uglify js具有对等依赖性,因此为了使用该插件,还必须安装uglify js。这个 目前(2017/1/25)可用的uglify js npm软件包;然而,你知道吗 不支持缩小ES6代码。为了支持ES6,一个 必须提供支持ES6的、又称和谐的UglifyJS版本

如果您的缩小目标是ES6:

纱线添加git://github.com/mishoo/UglifyJS2#harmony-v2.8.22——开发

添加到您的开发依赖项,并更新
webpack.config.js
文件以明确使用此版本:

const UglifyJSPlugin = require('uglifyjs-webpack-plugin')

module.exports = {
  plugins: [
    new UglifyJSPlugin()
  ]
}
uglifyjs网页包插件最新稳定版本(v0.4.6)使用较旧版本的
uglify js
,而不是能够传输ES6的
uglify es
。此依赖项在1.0.0-beta.1版本中更新


这为我解决了这个问题。 我安装了
uglifyjs网页包插件

npm install uglifyjs-webpack-plugin --save-dev
然后将其添加到我的
webpack.config

const UglifyJSPlugin = require('uglifyjs-webpack-plugin')

module.exports = {
  plugins: [
    new UglifyJSPlugin()
  ]
}

WebpackSimpleRepository工作得非常好:因此这可能对您有用,但这并不是人们可能想要的答案。我遇到了同样的问题,所以我会努力弄清楚这里发生了什么。有1.0.0版本发布,所以你也可以使用它。你是我的英雄兄弟。我使用Webpack 3+Node 10.13,任何人都想知道我在将es6传输到es5之前运行了Babel。Babel未传输某些文件,因为这些文件不在Babel Loader的include属性中
const UglifyJSPlugin = require('uglifyjs-webpack-plugin')

module.exports = {
  plugins: [
    new UglifyJSPlugin()
  ]
}
npm install uglifyjs-webpack-plugin --save-dev
const UglifyJSPlugin = require('uglifyjs-webpack-plugin')

module.exports = {
  plugins: [
    new UglifyJSPlugin()
  ]
}