使用教程(一)--- entry,devtool,output,resolve
使用教程(二)--- module.loaders
使用教程(三)--- pluginscss個人 Webpack 版本是 3.10.0
// 安裝 npm install webpack-dev-server --save-dev // 在 package.json 配置下,方便使用。 "scripts": { "dev": "webpack-dev-server" // 運行命令會自動在node_modules文件夾找 webapck-dev-server模塊。 } // webpack.config.js 配置一下 devServer devServer: { clientLogLevel: 'warning', historyApiFallback: true, hot: true, compress: true, host: 'localhost', port: 8080 }
node_modules/.bin/webpack-dev-server
。若你 package.json 配置好了,在命令行輸入npm run dev
。HMR 這個插件是真正實現熱模塊更新的
。而 devServer 裏配置了 hot: true , webpack會自動添加 HMR 插件。因此模塊熱更新最終仍是 HMR 這個插件起的做用。若是爲 {...} , 看看通常裏面有什麼。html
rewrites: [ { from: /^\/subpage/, to: '/views/subpage.html' }, { from: /^\/helloWorld\/.*$/, to: function() { return '/views/hello_world.html; } } ] // 從代碼能夠看出 url 匹配正則,匹配成功就到某個頁面。 // 並不建議將路由寫在這,通常 historyApiFallback: true 就好了。
.
。你要提供哪裏的內容給虛擬服務器用。這裏最好填 絕對路徑。node
// 單目錄 contentBase: path.join(__dirname, "public") // 多目錄 contentBase: [path.join(__dirname, "public"), path.join(__dirname, "assets")]
overlay:{ errors:true, warnings:false }
url = '主機名' + 'publicPath配置的' +
'原來的url.path'
。這個其實與 output.publicPath 用法大同小異。// devServer.publicPath publicPath: "/assets/" // 本來路徑 --> 變換後的路徑 http://localhost:8080/app.js --> http://localhost:8080/assets/app.js
proxy: { '/proxy': { target: 'http://your_api_server.com', changeOrigin: true, pathRewrite: { '^/proxy': '' } }
http://localhost:8080/proxy/user/list
。http://localhost:8080/proxy/user/list 變爲 http://your_api_server.com/proxy/user/list
。但還不是咱們要的 url 。''
,那麼 url 最終爲 http://your_api_server.com/user/list
。watchOptions: { aggregateTimeout: 300, poll: 1000, ignored: /node_modules/ }
false
。