【发布时间】:2018-02-25 06:28:06
【问题描述】:
我正在 Heroku 上构建一个 django+react 应用程序,使用 django-npm 自动安装从 package.json 到 node-modules 目录的所有模块,然后在 python manage.py collectstatic 期间将所有内容复制到 staticfiles/(由 Heroku 触发在部署期间)。
但是,要使此配置正常工作,我需要在部署之前预先捆绑我的 React 应用程序,并将其与所有 CSS、字体等一起放入我的 static 文件夹中,以便稍后由 collectstatic 获取。
但我不想用新的捆绑版本污染我的 git 差异。那么,有没有办法让 webpack 在部署时创建一个 bundle?
我知道 Heroku 上有一个 release 命令,我可以在其中放置我的 npm run build。但问题是它只在collectstatic 之后触发,所以我的包只会在扫描此文件夹后在static/ 文件夹中创建,并且不会被复制到staticfiles 目录。
【问题讨论】:
-
为什么不在 npm build 之后在 heroku release 命令中重新运行 collectstatic。类似
release: npm run build && python manage.py collectstatic
标签: python node.js django heroku webpack