设置
  • 日夜间
    随系统
    浅色
    深色
  • 主题色

微信小程序组件框架升级:glass-easel 带来更多特性及更优性能

2026/8/15 18:41:34 来源:IT之家 作者:潞源 责编:潞源
感谢IT之家网友 有鲫雪狐 的线索投递!

IT之家 8 月 15 日消息,微信开发者本周(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)。

参考:

广告声明:文内含有的对外跳转链接(包括不限于超链接、二维码、口令等形式),用于传递更多信息,节省甄选时间,结果仅供参考,IT之家包含外链的文章均包含本声明。

相关文章

软媒旗下网站: IT之家 最会买 - 返利返现优惠券 iPhone之家 Win7之家 Win10之家 Win11之家

软媒旗下软件: 软媒手机APP应用 魔方 最会买 要知