【问题标题】:Npm run production Missed semicolon errornpm 运行生产错过分号错误
【发布时间】:2019-07-30 03:41:11
【问题描述】:

当我运行npm run dev 时,它编译所有内容都没有错误,但是当我尝试运行npm run production 时,我收到此错误:

cross-env NODE_ENV=production node_modules/webpack/bin/webpack.js - 
-progress --hide-modules --config=node_modules/laravel- 
mix/setup/webpack.config.js

92% chunk asset optimization 
OptimizeCssAssetsWebpackPluginCssSyntaxError: C:\css\themes\default- 
theme.css:3:19: Missed semicolon
at Input.error 
(C:\Users\me\projects\blog\node_modules\postcss\lib\input.js:130:16)
at Parser.checkMissedSemicolon 

这是我的css文件

 var map = {
"./af": "./node_modules/moment/locale/af.js",
"./zh-hk.js": "./node_modules/moment/locale/zh-hk.js",
"./zh-tw": "./node_modules/moment/locale/zh-tw.js",
"./zh-tw.js": "./node_modules/moment/locale/zh-tw.js"};


function webpackContext(req) {
var id = webpackContextResolve(req);
return __webpack_require__(id);
}
function webpackContextResolve(req) {
if(!__webpack_require__.o(map, req)) {
    var e = new Error("Cannot find module '" + req + "'");
    e.code = 'MODULE_NOT_FOUND';
    throw e;
}
return map[req];
}
webpackContext.keys = function webpackContextKeys() {
return Object.keys(map);
};
webpackContext.resolve = webpackContextResolve;
module.exports = webpackContext;
webpackContext.id = "./node_modules/moment/locale sync recursive^\\.\\/.*$";

回答:我通过添加修复了错误

  plugins: [
  new webpack.IgnorePlugin(/^\.\/locale$/, /moment$/)
  ]

到我根目录下的 webpack.mix.js

【问题讨论】:

  • 您发布的代码的第 3 行似乎有问题。函数声明不完整。
  • @Jeemusu 抱歉,已更新整个文件。
  • “default-theme.css”的内容是什么?错误显示第 3 行字符 19 存在问题。
  • @Jeemusu 最后一段代码是 default-theme.css ,由 npm run dev 生成
  • 将 laravel-mix 降级到 3

标签: laravel npm sass


【解决方案1】:

通过插入消除错误:

 plugins: [
new webpack.IgnorePlugin(/^\.\/locale$/, /moment$/)
]

到 webpack.mix.js 但这不是一个修复它只是允许 npm run 生产运行。

【讨论】:

    猜你喜欢
    • 2019-03-31
    • 1970-01-01
    • 2016-05-18
    • 2021-05-04
    • 2019-11-20
    • 1970-01-01
    • 2019-04-14
    • 2015-12-05
    • 1970-01-01
    相关资源
    最近更新 更多