IT之家 4小时前
微信小程序组件框架升级:glass-easel 带来更多特性及更优性能
index_new5.html
../../../zaker_core/zaker_tpl_static/wap/tpl_keji1.html

 

IT 之家消息,微信开发者本周(8 月 12 日)宣布,微信小程序新一代框架组件 glass-easel 已经可以自由使用,该框架具备更多特性和更优性能,适合用来编写、维护复杂的小程序

据悉,glass-easel 是新版微信小程序组件框架的核心实现。从本质上说,glass-easel 是 JavaScript 的组件化界面框架,用来进行组件化、定义式的界面开发。

glass-easel 内核也可以独立运行在 web 环境下。除了组件框架本身,glass-easel 还配套了一组附件,包括代码编辑器插件、开发者工具扩展、国际化扩展等。同时该框架还是旧版组件 exparser 的升级,在保持兼容性的同时新增了各大特性和性能改进。

从小程序基础库版本 3.8.12 开始,glass-easel 组件框架提供了对 WebView 渲染引擎的支持,目前已覆盖约 98% 的微信用户。

IT 之家附 glass-easel 新特性如下:

Component 构造器的 Chaining 形式

Component 构造器新增了一种 Chaining 形式写法,像这样:

export default Component ( ) .data ( ( ) => ( { foo: 'bar', } ) ) .init ( function ( { data, setData, lifetime } ) { lifetime ( 'attached', ( ) => { console.log ( 'attached' ) } ) } ) .register ( )

Chaining 形式更适合组织复杂的组件逻辑,对 TypeScript 的支持也更好。它有一个 init ( ... ) 实例初始化函数、形成一个闭包,可以在这个闭包内自由定义(专属于当前实例的)局部变量,对于复杂组件非常实用。

此外,glass-easel 还提供了动态 slot、trait behaviors 等新特性,方便复杂组件的开发。

新 WXML 编译器

glass-easel 组件框架还附带了新的 WXML 编译器。

这个编译器支持一些新的实用语法。let: 语法可以轻松定义局部变量,class: 语法可以为节点更清晰地添加和移除样式类。

<block let:field="{{ my.complex.data.field }}"> <view>{{ field.title }}</view> <view>{{ field.description }}</view></block>

<view class:button class:button-enabled="{{ buttonEnabled }}"/>

新的 WXML 编译器编译速度更快,也将生成更高效的运行时代码。WXML 生成码执行速度可提升约 20%。

glass-easel 运行时性能优化

glass-easel 组件框架运行时性能也有重大改进。

glass-easel 采用了新的更新算法,可以大大降低在部分情况下的更新开销。现在 glass-easel 能综合使用基于虚拟树和非基于虚拟树的更新算法,以便适应不同的场景。在列表更新算法方面,新的算法在部分场景下可提升执行速度数倍。

此外,glass-easel 提供了高级数据更新方法、数据字段拷贝控制、组件初始化策略等新特性,来辅助实现更极致的性能优化。

微信官方建议用户将开发者工具升级至 nightly 版本,以获取更好的开发体验。使用 TypeScript 开发时,建议将 miniprogram-api-typings 升级到最新版本(5.2.3)。

宙世代

宙世代

ZAKER旗下Web3.0元宇宙平台

一起剪

一起剪

ZAKER旗下免费视频剪辑工具

相关标签

微信 小程序 语法 界面 it之家
相关文章
评论
没有更多评论了
取消

登录后才可以发布评论哦

打开小程序可以发布评论哦

12 我来说两句…
打开 ZAKER 参与讨论