React是目前比較火的前端框架之一,除了可以在自有服務器、Github Pages 部署以外,現在你有了一個新的選擇,那就是使用雲開發靜態網站功能來進行部署。
雲開發靜態網站託管支持通過雲開發SDK調用服務端資源如:雲函數、雲存儲、雲數據庫等,從而將靜態網站擴展爲全棧網站
雲開發(CloudBase)是騰訊云爲開發者提供的一站式後端雲服務,它幫助開發者統一構建和管理資源,免去了移動應用開發過程中繁瑣的服務器搭建及運維、域名註冊及備案、數據接口實現等繁瑣流程,讓開發者可以專注於業務邏輯的實現,而無需理解後端邏輯及服務器運維知識,開發門檻更低,效率更高。
無論是騰訊雲·雲開發用戶,還是小程序·雲開發用戶,只要開通按量付費,即可享有云開發靜態網站託管服務。
系統依賴
在進行後續的內容前,請先確保你的電腦中安裝了 Node.js 運行環境。如果沒有安裝,可以訪問 nodejs.org 下載安裝。
安裝雲開發 cli 工具 和 React腳手架
在配置好 NodeJs環境後,執行如下命令,安裝雲開發 cli 工具以及 React腳手架:
npm install -g @cloudbase/cli create-react-app
npx create-react-app reactdemo
本地初始化一個React項目
過程中腳手架會自動安裝項目中需要的相關依賴,安裝完成後可以看到下面這樣的輸出
安裝完成之後進入到項目目錄,啓動本地預覽,成功後項目將會運行在本地的3000端口
cd reactdemo
npm run start
在瀏覽器中打開localhost:3000,可以看到React的界面,這樣說明成功完成了本地開發的項目搭建
創建雲開發環境
創建一個雲開發環境用來部署React項目,可以從微信開發工具創建,也可以通過騰訊雲控制檯,在產品中找到雲開發,這邊舉例如何從騰訊雲中找到雲開發
進入到雲開發的管理控制檯,點擊新建環境,或者使用現有的環境來進行部署
新建一個環境,或者使用已創建的環境,注意這裏計費方式需要選擇按量計費,因爲只有按量計費纔可以進行開通靜態網站
開通環境後,有一個環境ID,這個ID後續會使用到,點擊對應的環境進入環境的管理頁面,點擊菜單欄中的靜態網站,開通靜態網站服務
出現下面圖示的界面,說明已經開通成功了。
現在我們通過雲開發的CLI來完成React項目的部署。
初始化雲開發CLI
完成了雲開發環境的配置後,需要登陸雲開發 cli ,從而實現藉助 cli 來進行部署(當然, 也可以通過網頁端直接上傳)
在命令行中輸入 cloudbase login
將會跳轉到雲開發控制檯頁面進行授權,
確認授權後出現下圖的界面,證明登陸成功了,同時有個小 tips,就是 cloudbase 可以使用簡寫命令 tcb
打包React項目並部署
回到React項目目錄中執行yarn build對項目進行打包,React腳手架將會默認將文件打包到build的目錄下
打包完成後,進入到build後的目錄執行如下命令來進行部署,envID需要替換成自己的envID
tcb hosting:deploy -e envId
部署完成後,就可以進行預覽了
線上訪問
進入對應環境設置頁面,可以找到默認的的域名,點擊域名,就可以看到你剛剛部署React項目,由於默認域名僅供測試使用,限制下行速度10KB/S。
如果需要對外正式提供網站服務,最好綁定已備案的自定義域名。
總結
只需簡單的幾步,你就可以輕鬆實現將React生成的SPA應用部署到雲開發上,不需要去購買服務器來進行部署,也不用去部署在Github上無法忍受的龜速!省去服務器購買的費用,還不趕快行動起來?
One More Things
9.9元包年靜態網站託管服務贊助計劃,只要是技術站點即可參與,點擊閱讀原文,立即申請!
原文地址:https://cloud.tencent.com/product/wh