簡體   English   中英

如何將帶有Django的react.js Webpack部署到Heroku?

[英]How to deploy react.js webpack with django to heroku?

我有一個django后端和react.js前端以及webpack。 我已經按照此頁面在本地進行了所有設置: http : //owaislone.org/blog/webpack-plus-reactjs-and-django/並運行了我的開發服務器,而且一切正常。 對於我的生產webpack文件,我已經復制了與站點上相同的文件。

但是我想部署到heroku,這就是我遇到的問題。 我是否需要在生產中用某種快遞服務器替換我的webpack-dev-server?

我可以只運行django並提供靜態javascript文件嗎? 為了生成這些文件,我嘗試運行:“ webpack webpack-config.prod.js --progress -p”,但是我收到一堆“無法解析模塊'fs'”錯誤,但我確實注意到它生成了一個900kb的js文件在資產/捆綁中。

另外,如果我嘗試在本地計算機(不帶開發服務器)上運行“ webpack webpack-config.prod.js --progress -p”並轉到django路由,則會在控制台中獲得此信息:

GET http:// localhost:3000 / assets / bundles / main-62ddfced1c44b3270fa7.js net :: ERR_CONNECTION_REFUSED

我花了好幾個小時使它生效,設置開發環境的速度要快得多。 我在這里做錯了什么?

如果您已經使用--save-dev標志安裝了任何依賴項,如您所鏈接的指南所建議的那樣,則它們將不會安裝在heroku上,因為它會運行帶有生產標志集的npm install 因此,如果fs在package.json中的devDependencies下,則不會安裝它。

據我所知,這里有兩個選擇。 您可以將生成的捆綁軟件置於版本控制下,以便將其推送到heroku 也可以僅使用--save標志安裝依賴項。 如果要在heroku上發布,我個人更喜歡使用--save ,然后添加一個名為heroku-postbuild的package.json腳本,該腳本運行webpack並構建捆綁包。

"scripts": {
    "heroku-postbuild": "npm run dist",
},

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM