如何为Firebase Flutter Web配置Beta与正式发布的部署命令?
配置Firebase分环境部署Flutter Web应用
完全可以实现这种分环境部署的需求,借助Firebase Hosting的**目标(targets)**功能就能搞定,具体步骤如下:
- 创建Firebase Hosting站点
登录Firebase控制台,进入你的项目(推荐用同一项目管理更方便,也可新建两个独立项目),在Hosting页面点击「添加站点」,分别创建myapp-release和myapp-preview两个站点,对应你需要的两个域名。
- 创建Firebase Hosting站点
- 关联本地项目与站点目标
在本地Flutter项目根目录打开终端,运行以下命令将自定义的target名称和Firebase站点绑定:
firebase target:apply hosting release myapp-release firebase target:apply hosting preview myapp-preview这里的
release和preview就是你后续部署命令中-t参数指定的目标名。- 关联本地项目与站点目标
- 修改
firebase.json配置
编辑项目根目录的firebase.json,为两个target分别配置部署规则,比如指定不同的构建产物目录、入口文件:
{ "hosting": [ { "target": "release", "public": "build/web-release", "site": "myapp-release", "rewrites": [ { "source": "**", "destination": "/index.html" // 正式环境入口 } ] }, { "target": "preview", "public": "build/web-preview", "site": "myapp-preview", "rewrites": [ { "source": "**", "destination": "/index.html" // 预览环境入口,如需不同可自定义文件名 } ] } ] }- 修改
- 分环境构建与部署
如果你需要为两个环境生成不同的Flutter Web构建产物,可通过以下命令指定输出目录(还能通过--dart-define注入环境变量):
# 构建正式环境产物 flutter build web --release --output=build/web-release # 构建预览环境产物 flutter build web --release --output=build/web-preview --dart-define=APP_ENV=preview之后执行对应的部署命令即可发布到指定站点:
firebase deploy -t release firebase deploy -t preview- 分环境构建与部署
内容的提问来源于stack exchange,提问作者polina-c
相关产品推荐
相关产品推荐

