【问题标题】:is there any way to run React + Django in same project without running npm run build again and again?有没有办法在同一个项目中运行 React + Django 而无需一次又一次地运行 npm run build ?
【发布时间】:2020-10-16 00:49:58
【问题描述】:

我对 Django 有足够的了解,并且最近学习了 react,我喜欢将两者结合起来。

我浏览了几个视频教程,并且成功地整合了它们。

但问题是我应该在两个不同的项目中构建一个 rest API 和一个 react 应用程序并将它们组合起来,或者我每次在前端进行任何更改时都需要运行npm run build

所以如果有人对此有替代方案(在 Django 服务器上连续运行 React,而不是一次又一次地运行 build)请告诉我。

【问题讨论】:

  • 如果你使用 create-react-app 作为前端,那么没有。代码是活的。仅当您准备好“部署”到 heroku 或 netlify 或其中一个应用程序主机时,才运行 npm build。
  • 您可以使用 django-webpack-loader,但您必须修改/覆盖 create-react-app webpack 配置。如果你相当熟悉 webpack 的工作原理并且可以配置,我只推荐它。 github.com/owais/django-webpack-loader

标签: django reactjs django-rest-framework


【解决方案1】:

在你的 package.json 文件中会有如下的 script 标签,

 "scripts": {
    "dev": "webpack  --mode development ./src/index.js --output ./static/frontend/main.js",
    "build": "webpack --mode production ./src/index.js --output ./static/frontend/main.js"
  },

在开发脚本中添加--watch标签,如下所示,

 "scripts": {
    "dev": "webpack --watch --mode development ./src/index.js --output ./static/frontend/main.js",
    "build": "webpack --mode production ./src/index.js --output ./static/frontend/main.js"
  },

那就npm run dev

这样JS就不会中断运行了。即使你在React里面修改了文件,它也会自动更新并运行。

文件结构可能因项目而异,但逻辑相同

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2020-01-10
    • 2021-05-20
    • 2016-10-19
    • 1970-01-01
    • 2020-03-21
    • 2021-08-23
    • 2018-06-28
    • 1970-01-01
    相关资源
    最近更新 更多