2019-2021 美团技术年货 前端篇FlutterWeb 性能优化探索与实践 36 设计稿(UI 视图)自动生成代码方案的探索 56 美团外卖终端容器无关化研发框架 74 一款可以让大型 iOS 工程编译速度提升 50% 的工具 96 从预编译的角度理解 Swift 与 Objective-C 及混编机制 108 美团民宿跨端复用框架设计与实践 165 美团跨端一体化富文本管理技术实践 186 前端 | 2020 之外再重新开发和维护一套鸿蒙应用,在如今业界越来越注 重开发迭代效率的环境下,所带来的开发成本也是难以估量的。因此,通过打造一套 合适的跨端框架,以相对低的成本移植应用到鸿蒙平台,并利用好该系统的特性能 力,就成为了一个非常重要的选项。 在现有的众多跨端框架当中,Flutter 以其自渲染能力带来的多端高度一致性,在新 系统的适配上有着突出的优势。虽然 Flutter 官方并没有适配鸿蒙的计划,但经过一 段时间的探索和实践,美团外卖 编写插件包。 下面分别对这两种类型 Package 中如何分平台编程进行介绍。 (1) Dart Package Dart Package 是纯 Dart 编写,因此大部分代码均可由 dart2js 直接编译出 Web 平 台可运行的代码,但某些涉及 Native 能力的库 (如 dart:io)是无法被转译的,因此 前端 < 19 需要有对平台进行兼容的方法,下面介绍两种在 Dart Package0 码力 | 738 页 | 50.29 MB | 1 年前3
阮一峰 《ECMAScript 6入门》 第三版"browserify": { "transform": [["babelify", { "presets": ["latest"] }]] } } 在线转换 Babel 提供一个REPL在线编译器,可以在线将 ES6 代码转为 ES5 代码。转换后的 代码,可以直接作为 ES5 代码插入网页运行。 与其他工具的配合 许多工具需要 Babel 进行前置转码,这里举两个例子:ESLint 代码。 注意,第四个 script 标签的 type 属性的值是 module ,而不 是 text/javascript 。这是 Traceur 编译器识别 ES6 代码的标志,编译器会自 动将所有 type=module 的代码编译为 ES5,然后再交给浏览器执行。 除了引用外部 ES6 脚本,也可以直接在网页中放置 ES6 代码。













