「react-hot-loader」用於在使用react編寫程式碼時讓修改後的部分自動刷新;「hot-loader」並不會刷新網頁,而是替換修改過的部分,可用「npm install --save-dev react-hot-loader」安裝。
本教學操作環境:Windows10系統、react17.0.1版、Dell G3電腦。
hot loader 是幹嘛的呢?引用官網的一句話就是
簡單的講,就是使用 react 編寫程式碼時,能讓修改的部分自動刷新。
但這和自動刷新網頁是不同的,因為 hot-loader 並不會刷新網頁,而只是替換你修改的部分。
安裝
首先是安裝react-hot-loader
npm install --save-dev react-hot-loader
另外hot-loader 是基於webpack-dev-server,所以還要安裝webpack-dev-server
npm install --save-dev webpack-dev-server
設定
設定webpack-dev-server
使用react-hot-loader 時,首先還是要讓webpack -dev-server 開啟。
在根目錄新建server.js
var webpack = require('webpack'); var WebpackDevServer = require('webpack-dev-server'); var config = require('./webpack.config'); new WebpackDevServer(webpack(config), { publicPath: config.output.publicPath, hot: true, historyApiFallback: true }).listen(3000, 'localhost', function (err, result) { if (err) { return console.log(err); } console.log('Listening at http://localhost:3000/') }); 配置 webpack.config.js 然后在 webpack 的配置文件里添加 react-hot-loader。 打开 webpack.config.js var webpack = require('webpack'); module.exports = { // 修改 entry entry: [ // 写在入口文件之前 "webpack-dev-server/client?http://0.0.0.0:3000", "webpack/hot/only-dev-server", // 这里是你的入口文件 "./src/app.js", ], output: { path: __dirname, filename: "build/js/bundle.js", publicPath: "/build" }, module: { loaders: [ { test: /\.jsx?$/, exclude: /node_modules/, // 在这里添加 react-hot,注意这里使用的是loaders,所以不能用 query,应该把presets参数写在 babel 的后面 loaders: ['react-hot', 'babel?presets[]=react,presets[]=es2015'] } ] }, // 添加插件 plugins: [ new webpack.HotModuleReplacementPlugin() ]
使用
先執行server.js(當然你可以在package.json 裡面配置,使用npm start 運行)
node server.js
然後照常使用webpack
webpack --display-error-details --progress --colors --watch
推薦學習:《react影片教學》
以上是react-hot-loader的用法是什麼的詳細內容。更多資訊請關注PHP中文網其他相關文章!