在线观看不卡亚洲电影_亚洲妓女99综合网_91青青青亚洲娱乐在线观看_日韩无码高清综合久久

鍍金池/ 問答/HTML/ vue-cli 中使用 NoEmitOnErrorsPlugin 具體有什么作用

vue-cli 中使用 NoEmitOnErrorsPlugin 具體有什么作用,怎么做能把其作用顯現(xiàn)出來?

webpack.dev.config.js使用了NoEmitOnErrorsPlugin插件,但去掉沒有感覺

看官方的解釋:

  1. 在編譯出現(xiàn)錯誤時,使用 NoEmitOnErrorsPlugin 來跳過輸出階段。
  2. 如果你在使用 CLI(命令行界面command-line interface),啟用此插件后,webpack 進(jìn)程遇到錯誤代碼將不會退出。

clipboard.png

我有這幾點(diǎn)疑問:

  1. “在編譯出現(xiàn)錯誤時,使用 NoEmitOnErrorsPlugin 來跳過輸出階段,這樣可以確保輸出資源不會包含錯誤”這句話不是很理解
  2. "dev": "webpack-dev-server --inline --progress --config build/webpack.dev.conf.js", 執(zhí)行 npm run dev 時算 使用 CLI 嗎?如果算,我去掉這個插件,我寫一些錯誤代碼依然不會退出webpack 進(jìn)程,這是為什么?
回答
編輯回答
枕頭人
  1. NoEmitOnErrorsPlugin的官方中文文檔翻譯里還有這樣一段
對于所有資源,統(tǒng)計(jì)資料(stat)的 emitted 標(biāo)識都是 false

webpacks配置參數(shù)中stats是用來配置輸出構(gòu)建日志級別的
看了下NoEmitOnErrorsPlugin的源碼部分,其中有這一段,捕獲到日志錯誤時,返回false,即不輸出錯誤日志

if(compilation.getStats().hasErrors())
                return false;
  1. 這個問題,我也不太理解,只能說說我的見解。首先他是cli命令 ,啟用了WDS服務(wù),--inline表示默認(rèn)內(nèi)聯(lián)模式運(yùn)行,--progress表示輸出構(gòu)建過程。這部分發(fā)生錯誤時,其實(shí)應(yīng)該已經(jīng)報(bào)錯了,只是構(gòu)建錯誤應(yīng)該輸出到控制臺里了,而這里不中斷應(yīng)該是WDS本身啟用了watch模式的關(guān)系
2017年9月11日 14:48