Flutter做为一个可移植的UI框架,已经支持现代Web应用开发了!咱们很开心已经发布了SDK预览版,这样你能够在Web浏览器里直接运行你的Flutter UI代码。web
从去年Beta版发布以来,客户们已经使用Flutter来建立能够运行在iOS和Android上的移动应用了。可是,Flutter是以可移植的UI工具集构架的,它还能够运行在其余环境下,例如Windows、Mac、Fuchsia甚至Raspberry Pi。因为Flutter是使用Dart构建的,它针对原生机器码和JavaScript都包含了生产级的编译器,所以咱们有了一个坚实的基础。接下来的挑战在于须要使用web平台的对等单元来替换基于Skia的图形引擎和文本渲染器。浏览器
要正确地实现这一点,咱们须要提供:架构
虽然用于Web的Flutter还在开发中,在上述几个方面都还有不少工做要进行,不过咱们已经能够和你们分享一个预览版了,你能够尝试如下,期待你的反馈!框架
Flutter Web的整体架构与用于移动平台的Flutter很是接近:工具
Flutter框架(上图中绿色部分)在移动和web平台中共享,它提供了Flutter的UI基础层的高层次抽象,包括动画、收拾、基础组件类、以及大多数应用须要的物化主题的组件集。若是你已经在Flutter上开发,那么使用Flutter Web时你会感到很是熟悉。性能
魔力来自于将这些概念翻译到浏览器平台。咱们从新实现了dart:ui库,使用基于DOM和Canvas的代码替换了移动平台上对Skia引擎的绑定。当你为Web平台编译Flutter代码时,你的应用、Flutter框架、以及Web版本的dart:ui库都将编译为JavaScript,能够运行在任何现代浏览器上。开发工具
咱们仔细地拥抱web核心特性,例如将Flutter的路由模型与浏览器History无缝集成。咱们同时也努力让Flutter适应桌面环境,例如启用鼠标滚动、悬停、聚焦等等,虽然这些特性在移动体验中并不须要。动画
Flutter Web项目聚焦于框架提供的核心价值:丰富的交互式体验。而聚焦于文档的Web内容依然能够经过嵌入Flutter Web可视化元素来获益。ui
预览版本的Flutter Web框架当前是做为已有Flutter框架的一个临时分支。这使得咱们的工程师能够快速实现Web功能,同时核心团队能够继续维护并改进生产可用的工具集。咱们一进刚开始将 浏览器支持合并到主仓库。咱们计划提供一个Flutter工具集,提供一个单一的框架来知足移动、Web以及其余平台的开发须要。插件
接下来计划的工做包括:
你能够到flutter.dev/web查看示例、文档以及其余资源的连接,咱们期待着看到你的创做!
汇智网原创翻译,转载请标明出处。这里是原文Flutter Web - 目标全平台开发的Flutter再下一城!