Flutter Web部署到子路径的打包指令

打包指令:

复制代码
flutter build web --web-renderer canvaskit --base-href /dev110/ --no-tree-shake-icons --dart-define=ENV=prod

参数说明:

  • --web-renderer canvaskit: 使用 canvaskit 渲染模式,可以提高图形和动画的质量。
  • --base-href /dev110/: 设置应用程序的基础路径为 /dev110/,这适合部署在子路径的情况。确保服务器支持路径下的静态资源。
  • --no-tree-shake-icons: 禁用图标的 tree shaking,确保所有图标资源在打包时保留。
  • --dart-define=ENV=prod: 设置环境变量 ENVprod,可以在应用中通过 String.fromEnvironment('ENV') 访问。

部署时需要注意:

  1. Web服务器配置

    • 确保服务器支持二级路由和 base-href 设置,例如在 Nginx 中配置静态资源的根目录为 /dev110/
    • 配置路由重写规则,避免用户刷新页面时出现 404 错误。一般来说,应该重写所有路由请求到 index.html
  2. 访问基础路径

    • 在生产环境访问 https://your-domain.com/dev110/ 进行测试,确保所有资源加载正常。

这样就可以在指定路径上正常运行 Flutter Web 项目并且支持二级路由了。

相关推荐
坚果的博客19 小时前
Flutter 三方库(Flutter-New-Badge)适配开源鸿蒙教程
flutter·开源·harmonyos
二蛋和他的大花19 小时前
高德地图 Flutter 插件:跨 Android / iOS / HarmonyOS 的完整实现
android·flutter·ios
不爱吃糖的程序媛19 小时前
鸿蒙Flutter 三方库 country_codes 的 适配实战
flutter·华为·harmonyos
●VON19 小时前
鸿蒙Flutter实战:Markdown编辑与预览实时切换
flutter·华为·harmonyos·鸿蒙
程序员老刘·2 天前
Flutter 3.44 更新要点:很重要但暂时先别升级
flutter·ai编程·跨平台开发·客户端开发
用户86284129549442 天前
Flutter rxflare 计算属性 computed:自动依赖追踪 + 缓存(超实用)
flutter
用户86284129549442 天前
Flutter rxflare 性能测试(最终推荐版):1000 列表极致优化・官方最佳写法
flutter
用户86284129549442 天前
Flutter rxflare 响应式编程:.obs + Rx 组件极简实战
flutter
用户86284129549442 天前
Flutter rxflare 响应式进阶:Map/List 精准字段更新(高性能实战)
前端·flutter
King老师2 天前
Flutter 视频代理完全教程
flutter·音视频