webpack搭建多頁面系統(二):對webpack.config.js配置文件的理解

webpack配置文件的理解

webpack的配置文件是沒有固定的命名的,在個人項目中創建了兩個配置文件,一個是開發的配置文件webpack.config.js;另外一個是上線的配置文件webpack.build.config.js。二者內容上的差異,在之後的文檔中解釋。它們是怎麼執行不一樣的配置文件的尼?這纔是重點。
在package.json文件中,有腳本的執行配置,如圖:html

clipboard.png
在咱們的cmd命令行中,開發時:執行npm run dev;將執行咱們的webpack.config.js文件;
最終上線時:執行npm run build;將執行咱們的webpack.build.config.js文件;二者的內容有細微的差異。
這是對兩個配置文件的理解。
每次編譯代碼時,手動的npm run dev 就會變得有點麻煩。
webpack提供了幾個選項,能夠幫助咱們在代碼發生變化後自動編譯代碼:
一、webpack's Watch Mode
二、webpack-dev-server
三、webpack-dev-middleware
多數場景中,使用webpack-dev-server。
參考官方文檔:https://doc.webpack-china.org...
在個人項目中使用的是webpack-dev-sever。提供了一個簡單的web服務器,而且可以實時從新加載(live reloading)
webpack.config.jswebpack

clipboard.png
參考webpack-dev-server文檔:https://doc.webpack-china.org...web

devServer:{
    contentBase:目錄文件所在的位置,
    historyApiFallback:任意的404響應均可能須要被替代爲index.html.通常默認true.
    historyApiFallback:{
            rewrites:[
                {from:/^\/$/,to:'/views/landing.html'}, #以根‘/’開始,以根‘/’結尾的請求,重定向到‘/views/landing.html’
                {from:/^\/subpage/,to:'views/subpage.html'}, #以‘/subpage’開始的請求,重定向到‘views/subpage.html’
                {from:/./,to:'/views/404.html'} #不匹配上面的任意除了換行符以外的請求,重定向到‘/views/404.html’
            ]
        }
    inline:boolen;在dev-server的兩種不一樣模式之間的切換。默認啓用內聯模式(
    inline mode),處理實時重載的腳本被插入到你的包(bundle)中,而且構建消息將會出如今瀏覽器控制檯。
    progress:boolen;用於命令行工具,將運行進度輸出到控制檯。
    port:number;指定要監聽請求的端口號
    index:string;索引文件的文件名
    host:string;指定使用一個host.默認是localhost。ip地址
    proxy:object;代理配置,代理後端開發服務器API,而且但願在同域名下發送API請求。
    
    
}

這是對webpack.config.js中對webpack-dev-server的解讀!!!可能存在一些不對的地方,但願指出!!!npm

相關文章
相關標籤/搜索