ElementUI / element-in-laravel-starter

Laravel Project with Vue2 and Element
731 stars 154 forks source link

执行npm run prod报UglifyJs错误。 #26

Closed Singiu closed 6 years ago

Singiu commented 6 years ago

如题,当执行 npm run prod 命令时,会报以下错误:

ERROR in /js/admin.js from UglifyJs
Unexpected token: operator (>) [./node_modules/element-ui/src/mixins/emitter.js:2,0][/js/admin.js:19225,32]

我的 package.json 文件内容:

{
  "private": true,
  "scripts": {
    "dev": "npm run development",
    "development": "cross-env NODE_ENV=development node_modules/webpack/bin/webpack.js --progress --hide-modules --config=node_modules/laravel-mix/setup/webpack.config.js",
    "watch": "cross-env NODE_ENV=development node_modules/webpack/bin/webpack.js --watch --progress --hide-modules --config=node_modules/laravel-mix/setup/webpack.config.js",
    "watch-poll": "npm run watch -- --watch-poll",
    "hot": "cross-env NODE_ENV=development node_modules/webpack-dev-server/bin/webpack-dev-server.js --inline --hot --config=node_modules/laravel-mix/setup/webpack.config.js",
    "prod": "npm run production",
    "production": "cross-env NODE_ENV=production node_modules/webpack/bin/webpack.js --progress --hide-modules --config=node_modules/laravel-mix/setup/webpack.config.js"
  },
  "devDependencies": {
    "axios": "^0.16.2",
    "babel-core": "^6.26.0",
    "babel-loader": "^7.1.2",
    "babel-preset-es2015": "^6.24.1",
    "bootstrap-sass": "^3.3.7",
    "cross-env": "^5.0.1",
    "css-loader": "^0.28.7",
    "element-ui": "^2.0.1",
    "jquery": "^3.1.1",
    "laravel-mix": "^1.0",
    "lodash": "^4.17.4",
    "style-loader": "^0.19.0",
    "vue": "^2.1.10",
    "vue-loader": "^13.3.0",
    "vue-router": "^3.0.1"
  }
}

我的 .babelrc 文件内容:

{
  "presets": ["es2015"]
}

我执行 npm run dev 是正常的,但产生的文件太大了,不适用生产环境。 google 了很久,貌似是 UglifyJs 不支持 ES6?本人是后端刚转前端开发,对前端环境还不是很熟悉,是否有大神可解释错误导致的原因吗? 谢谢~

Singiu commented 6 years ago

我参考了这里的设置:https://ctf0.wordpress.com/2017/09/12/laravel-mix-es6/ 然后问题得到解决。