簡體   English   中英

為什么 Firebase 部署完整的反應應用程序而不是部署構建目錄文件?

[英]Why Firebase deploy's full react app instead of deploying build directory files?

所以我使用 create-react-app 工具鏈創建了一個反應應用程序。 編寫了一些組件並運行

firebase init

npm run build

firebase deploy --only hosting

現在,當我在 chrome dev-tools 的源選項卡中檢查我的實時應用程序時,它顯示了 react 應用程序的所有源文件,包括評論。

firebase 不應該只部署構建目錄中針對生產進行了優化和縮小的塊嗎?

我運行網絡測試以查看正在獲取的文件類型,令人驚訝的是它只獲取了構建目錄中的塊。 那么我的 src 目錄的所有文件如何也以原始形式存在?

現在有可能瀏覽器從塊中構造它們。 然后它似乎是一個反應構建問題,它不會在生產構建中刪除評論和丑化。

但我也分析了構建目錄中的 js 塊,它們沒有嵌入評論。

這是我的 firebase 配置:

{
  "hosting": {
    "public": "build",
    "ignore": [
      "firebase.json",
      "**/.*",
      "**/node_modules/**"
    ],
    "rewrites": [
      {
        "source": "**",
        "destination": "/index.html"
      }
    ]
  }
}


所以我找到了解決方案。

它與 firebase 托管無關。

需要配置 react 的構建來解決這個問題。 基本上,我們必須停止反應生成源 map。

看起來構建目錄中的這些源 map 包含我們部署到 firebase 的原始 js 文件。

將 package.json 中的反應構建命令更改為


"build": "GENERATE_SOURCEMAP=false react-scripts build",

暫無
暫無

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

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