我一直在尝试借助webpack 4在django中设置一个react组件。
为了让我起步,我仔细阅读了以下内容:
结合使用Webpack和Django +热重载React组件作为奖励
教程:带有React的Django REST(Django 2.0和一些测试)
这两个演练都非常好。最后,即使我确实使用了django 1.11,也可以通过跟随第二个链接来使它正常工作。
我跟随第二个链接后遇到的问题是,使用webpack-dev-server时,热重装不起作用。问题在于,虽然可以读取main.js,但django无法读取webpack-dev-server的输出文件(给出404错误)。我读过dev-server文件默认情况下仅存在于内存中。
为了克服热重载文件上出现错误404的问题,请安装软件包write-file-webpack-plugin以将每次重载写出。然后将webpack-config.js更改为(我删除了几行以使其更短...。):
var path = require('path');
//webpack is not needed since I removed it from plugins
//const webpack = require('webpack');
var BundleTracker = require('webpack-bundle-tracker');
var WriteFilePlugin =require('write-file-webpack-plugin');
module.exports = {
module: {
rules: [
{
test: /\.js$/,
exclude: /node_modules/,
use: {
loader: "babel-loader"
}
},
]
},
entry: [
'./frontend/src/index',
],
output: {
path: path.join(__dirname, 'frontend/static/frontend'),
// Changing the name from "[name]-[hash].js" to not get 1000 files in …Run Code Online (Sandbox Code Playgroud)