摘要:關于的和以上是關于與的所有文件指令分析里面意思運行的時候執行的是文件,運行的時候執行的是文件。前端開發過程中需要使用到后臺的的話,可以通過配置來將相應的后臺請求代理到專用的服務器。和這三個文件就簡單設置了環境變量而已,沒什么特別的。
關于vue的npm run dev和npm run build
├─build
│ ├─build.js
│ ├─check-versions.js
│ ├─dev-client.js
│ ├─dev-server.js
│ ├─utils.js
│ ├─vue-loader.conf.js
│ ├─webpack.base.conf.js
│ ├─webpack.dev.conf.js
│ ├─webpack.prod.conf.js
│ └─webpack.test.conf.js
├─config
│ ├─dev.env.js
│ ├─index.js
│ ├─prod.env.js
│ └─test.env.js
├─...
└─package.json
以上是關于bulid與run的所有文件
指令分析
package.json里面
"dev": "node build/dev-server.js",
"build": "node build/build.js",
意思:運行”npm run dev”的時候執行的是build/dev-server.js文件,
運行”npm run build”的時候執行的是build/build.js文件。
build文件夾分析
build/dev-server.js
npm run dev 執行的文件build/dev-server.js文件,執行了:
檢查node和npm的版本
引入相關插件和配置
創建express服務器和webpack編譯器
配置開發中間件(webpack-dev-middleware)和熱重載中間件(webpack-hot-middleware)
掛載代理服務和中間件
配置靜態資源
啟動服務器監聽特定端口(8080)
自動打開瀏覽器并打開特定網址(localhost:8080)
說明: express服務器提供靜態文件服務,不過它還使用了http-proxy-middleware,一個http請求代理的中間件。前端開發過程中需要使用到后臺的API的話,可以通過配置proxyTable來將相應的后臺請求代理到專用的API服務器。
build/webpack.base.conf.js
dev-server依賴的webpack配置是webpack.dev.conf.js文件,
測試環境下使用的是webpack.prod.conf.js
webpack.dev.conf.js中又引用了webpack.base.conf.js
webpack.base.conf.js主要完成了下面這些事情:
配置webpack編譯入口
配置webpack輸出路徑和命名規則
配置模塊resolve規則
配置不同類型模塊的處理規則
這個配置里面只配置了.js、.vue、圖片、字體等幾類文件的處理規則,如果需要處理其他文件可以在module.rules里面配置。
build/webpack.dev.conf.js
在webpack.base.conf的基礎上增加完善了開發環境下面的配置,主要包括下面幾件事情:
將hot-reload相關的代碼添加到entry chunks
合并基礎的webpack配置
使用styleLoaders
配置Source Maps
配置webpack插件
build/check-versions.js和build/dev-client.js
最后是build文件夾下面兩個比較簡單的文件,
dev-client.js似乎沒有使用到,代碼也比較簡單,這里不多講。
check-version.js完成對node和npm的版本檢測
build/utils.js和build/vue-loader.conf.js
webpack配置文件中使用到了utils.js和vue-loader.conf.js這兩個文件,utils主要完成下面3件事:
配置靜態資源路徑
生成cssLoaders用于加載.vue文件中的樣式
生成styleLoaders用于加載不在.vue文件中的多帶帶存在的樣式文件
vue-loader.conf則只配置了css加載器以及編譯css之后自動添加前綴。
build/build.js
構建環境下的配置,
build.js主要完成下面幾件事:
loading動畫
刪除創建目標文件夾
webpack編譯
輸出信息
build/webpack.prod.conf.js
構建的時候用到的webpack配置來自webpack.prod.conf.js,該配置同樣是在webpack.base.conf基礎上的進一步完善。主要完成下面幾件事情:
合并基礎的webpack配置
使用styleLoaders
配置webpack的輸出
配置webpack插件
gzip模式下的webpack插件配置
webpack-bundle分析
說明: webpack插件里面多了丑化壓縮代碼以及抽離css文件等插件。
config文件夾分析
config/index.js
config文件夾下最主要的文件就是index.js了,
在這里面描述了開發和構建兩種環境下的配置,前面的build文件夾下也有不少文件引用了index.js里面的配置。
config/dev.env.js、config/prod.env.js和config/test.env.js
這三個文件就簡單設置了環境變量而已,沒什么特別的。
這是webpack的基本入門,webpack還有很多插件,還需要去探索
后面寫這幾個文件的源碼解釋。
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://m.specialneedsforspecialkids.com/yun/110243.html
摘要:前言一般服務器分為本地環境,測試環境,正式環境如果每次都要修改配置就很麻煩,總結一下我使用的方法修改執行命令修改文件的,在打包的時候執行不同的命令,測試執行那正式執行這里用到了能跨平臺地設置及使用環境變量,使用 前言 一般服務器分為本地環境,測試環境,正式環境如果每次都要修改配置就很麻煩,總結一下我使用的方法 vue-demo/ |-build/ |-config/ |-d...
摘要:從到完美,用寫一個命令行工具中的字段現在,不管是前端項目還是項目,一般都會用做包管理工具,而是其相關的配置信息。又一個讓命令行與用戶進行交互的工具與功能差不多。比較常用的命令行命令行相關的應用就很多啦,比如等,但這些不僅僅是命令行工具。 從 1 到完美,用 node 寫一個命令行工具 1. package.json 中的 bin 字段 現在,不管是前端項目還是 node 項目,一般都會...
摘要:通過文件可以對圖標名稱等信息進行配置。注意,注冊的只在生產環境中生效,并且該功能只有在下才能有效果該文件是過濾文件配置該文件是描述文件定義了項目所需要的各種模塊,以及項目的配置信息比如名稱版本許可證等元數據。 一、 快速開始: 全局安裝腳手架: $ npm install -g create-react-app 通過腳手架搭建項目: $ create-react-app 開始項目: ...
摘要:通過文件可以對圖標名稱等信息進行配置。注意,注冊的只在生產環境中生效,并且該功能只有在下才能有效果該文件是過濾文件配置該文件是描述文件定義了項目所需要的各種模塊,以及項目的配置信息比如名稱版本許可證等元數據。 一、 快速開始: 全局安裝腳手架: $ npm install -g create-react-app 通過腳手架搭建項目: $ create-react-app 開始項目: ...
摘要:插件則可以用于執行范圍更廣的任務。插件的范圍包括,從打包優化和壓縮,一直到重新定義環境中的變量等。插件的使用一般是在的配置信息選項中指定。到這里基本配置已經告一段落了,所有配置我已經放在倉庫中第二期優化教程已出歡迎關注和提問 1、了解Webpack相關 什么是webpack Webpack是一個模塊打包器(bundler)。 在Webpack看來, 前端的所有資源文件(js/js...
閱讀 3001·2021-10-13 09:39
閱讀 2697·2021-09-27 13:34
閱讀 2036·2019-08-30 15:55
閱讀 3266·2019-08-30 15:43
閱讀 3641·2019-08-30 11:16
閱讀 1757·2019-08-26 18:28
閱讀 1293·2019-08-26 13:56
閱讀 918·2019-08-26 13:35