2017-07-12 30 views
0

webpack失敗,錯誤,我想調查爲什麼失敗。如何配置紗線以顯示來自webpack的輸出? webpack --display-error-details

ERROR in ./~/react-navigation/lib/views/HeaderBackButton.js 
Module not found: Error: Can't resolve './assets/back-icon.png' in '/home/xxx/projects/react-native-web-boilerplate/node_modules/react-navigation/lib/views' 
@ ./~/react-navigation/lib/views/HeaderBackButton.js 73:18-51 
@ ./~/react-navigation/lib/react-navigation.js 
@ ./src/navigation.js 
@ ./index.web.js 
@ multi (webpack)-dev-server/client?http://localhost:3000 webpack/hot/dev-server webpack-dev-server/client?http://localhost:3000 webpack/hot/only-dev-server react-hot-loader/patch ./index.web.js 

我知道命令做到這一點。

webpack --display-error-details 

但是,我不知道要配置yarn來顯示webpack的錯誤細節。

這就是我通常運行我的項目的方式。

cd project 
yarn 
yarn web 

回答

1

您可以將任何標誌通過--後面的命令傳遞給基礎命令。雙破折號表示命令選項的結束,並且yarn將意識到它後面的所有內容都應該傳遞給正在執行的命令/腳本。

假設您在package.json中有以下腳本。

"scripts": { 
    "web": "webpack --progress --config custom.config.js" 
} 

當你運行:

yarn web -- --display-error-details 

紗將有效運行:

webpack --progress --config custom.config.js --display-error-details 

它允許你添加任何參數/選項,同時仍然在運行相同的基本命令。如上例所示,您可能需要這樣做,您總是希望擁有--config custom.config.js選項。

如果您只想在不創建腳本的情況下運行本地安裝的可執行文件,可以通過以下方式之一來執行此操作。

yarn webpack -- --display-error-details 
# Or 
yarn run webpack -- --display-error-details 

run命令是可選的,但要注意的是,當內置命令存在,它將運行的是不是一個腳本/可執行文件。紗尋找一個現有的命令順序是:

  1. 內置命令
  2. 腳本在package.json
  3. 可執行在./node_modules/.bin/

隨着run它會跳過第一步,讓你運行與內置命令相同名稱的腳本。如果您有一個腳本clean,例如刪除任何構建的文件,這兩個不相同,因爲紗線有clean命令。

yarn clean  # yarn's built-in clean 
yarn run clean # your script