提问:Flutter 项目在浏览器中运行失败是怎么回事?

在这里插入图片描述

如题目所示,上图是在 Window 11 环境下,通过 vscode F5 快捷键 执行运行程序后在浏览器中展示界面。麻烦大家帮忙看下一下,为什么flutter运行不起来呢?

当前系统运行环境:

  • Windows 11
  • GIt version 2.44.0.windows.1
  • vscode 编辑器,插件 flutterdart 也已安装
  • flutter-sdk: 3.35.7
  • android studio 已经安装,对应的平台及36.135.,34S DK已经安装
  • 命令行中执行java, javac 都是有效信息的,如:java version "1.8.0_451"
  • 环境变量已经配置
    在这里插入图片描述
  • flutter doctor 运行结果如下:
    在这里插入图片描述
    看到这里,想来说只要不开发web,仅仅考虑 iosandroid 也是 够了
  • 在 vscode 中执行 flutter run - d chrome
    在这里插入图片描述
    回到最开的那张图,难道跟系统的防火墙有关系吗,如下图所示:
    在这里插入图片描述
    大家知道这是什么原因导致界面不显示的呢?
Flutter 项目搭建并在**浏览器运行**,是 Flutter Web 的核心功能之一。下面我将 **详细、分步骤地指导你从零开始创建一个 Flutter 项目,并在浏览器中成功运行它**。 --- ## ✅ 目标:把 Flutter 项目部署到浏览器运行(即启用并运行 Flutter Web) ### 🧰 前提条件 确保你的开发环境已安装以下工具: 1. **Flutter SDK**(v3.0+ 推荐) 2. **Dart SDK**(通常随 Flutter 自动安装) 3. **Chrome 浏览器**(默认调试浏览器) 4. **支持的编辑器**:VS Code / Android Studio / 或命令行 5. (可选)Git、Node.js(用于后续部署) > 如果未安装 Flutter,请先前往官网安装: > > 👉 https://docs.flutter.dev/get-started/install --- ## 🔧 步骤 1:创建一个新的 Flutter 项目 打开终端(或 PowerShell),执行: ```bash flutter create my_web_app cd my_web_app ``` 这会生成一个标准的 Flutter 应用模板。 --- ## 🔍 步骤 2:启用 Web 支持(通常已默认开启) 检查当前支持的设备平台: ```bash flutter devices ``` 你应该能看到类似输出: ``` Chrome • chrome • web-javascript • Google Chrome 118.0.5993.70 Edge • edge • web-javascript • Microsoft Edge 118.0.2088.69 ``` 如果看不到 `Chrome`,说明 Web 平台未启用,运行: ```bash flutter config --enable-web ``` 然后再次运行 `flutter devices` 确认是否出现浏览器选项。 ✅ 成功后你会看到支持的 Web 设备。 --- ## ▶️ 步骤 3:在浏览器运行项目 执行以下命令启动应用: ```bash flutter run -d chrome ``` 或者指定使用 Edge: ```bash flutter run -d edge ``` 首次运行时,Flutter 会: - 编译 Dart 代码为 JavaScript - 启动本地开发服务器(http://localhost:XXXX) - 自动打开 Chrome 浏览器加载应用 🟢 成功标志:浏览器中显示 Flutter 默认计数器 App,点击按钮数字递增。 --- ## 📁 项目结构说明(Web 相关部分) ``` my_web_app/ ├── lib/ # 主要 Dart 源码 │ └── main.dart # 入口文件 ├── web/ # Web 特有资源(关键目录) │ ├── index.html # 主页面(必须存在) │ ├── manifest.json # PWA 配置 │ └── favicon.png # 网站图标 ├── build/ # 构建输出目录(运行后生成) │ └── web/ # 编译后的 JS/CSS/HTML 文件 └── pubspec.yaml # 依赖配置文件 ``` > 💡 所有 Web 资源都通过 `/web` 目录提供,你可以修改 `index.html` 添加 meta 标签、Google Analytics 等。 --- ## 🛠️ 步骤 4:构建生产版本(用于部署) 当你想把应用发布到线上服务器时,使用: ```bash flutter build web --release ``` 输出路径: ``` build/web/ ``` 这个目录包含所有静态文件(`.js`, `.css`, `.html`, 图片等),可以直接部署到: - GitHub Pages - Firebase Hosting - Nginx/Apache - Vercel / Netlify - 自建服务器 --- ## ☁️ 示例:部署到 GitHub Pages ### 1. 构建项目 ```bash flutter build web ``` ### 2. 进入输出目录 ```bash cd build/web ``` ### 3. 初始化 Git 并推送到 gh-pages 分支 ```bash git init git add . git commit -m "Deploy Flutter Web" git branch -M gh-pages git remote add origin https://github.com/<用户名>/<仓库名>.git git push -u origin gh-pages ``` ### 4. 访问地址 ``` https://<用户名>.github.io/<仓库名>/ ``` ✅ 成功上线! --- ## ⚙️ 可选配置:优化 Web 输出 编辑 `pubspec.yaml`: ```yaml flutter: generate: true # 自动生成 widget 键(可选) ``` 在 `web/index.html` 中添加 viewport 支持响应式: ```html <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no" /> ``` --- ## 🌐 注意事项 | 问题 | 解决方案 | |------|----------| | 白屏或空白页 | 检查 `index.html` 是否正确加载 `main.dart.js` | | 路由刷新 404 | Web 服务器需配置 fallback 到 `index.html`(如 SPA) | | 性能慢 | 使用 `--web-renderer html` 或 `canvaskit`:<br>`flutter run -d chrome --web-renderer canvaskit` | | 不支持某些插件 | 如 `camera`, `path_provider` 在 Web 上受限 | --- ## ✅ 总结:完整流程回顾 1. 安装 Flutter SDK 2. 创建项目:`flutter create xxx` 3. 启用 Web:`flutter config --enable-web` 4. 运行浏览器:`flutter run -d chrome` 5. 构建发布版:`flutter build web` 6. 部署静态文件到任意 Web 服务器 你现在已经成功将 Flutter 项目运行浏览器上了! ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值