微信小程序wx:key几种设置方式

对于key官方文档描述的很清晰,主要的作用是当数据改变触发渲染层重新渲染的时候,会校正带有 key 的组件,框架会确保他们被重新排序,而不是重新创建,以确保使组件保持自身的状态,并且提高列表渲染时的效率。

注意:如不提供 wx:key,会报一个 warning, 如果明确知道该列表是静态,或者不必关注其顺序,可以选择忽略。

一、index

wx:for遍历数据默认索引是index

<view wx:key="index"></view>

二、*this

*this在官方文档上的介绍是item本身,不过只能在item是维一数字或字符串时才能使用

例如:

<view wx:for="{{[1,2,3]}}" wx:key="*this"></view>

<view wx:for="{{['a', 'b', 'c']}}" wx:key="*this"></view>

三、使用维一属性值

如果item是一个对象时,可使用能代表唯一值的属性,如:id

<view wx:for="{{[{id: 1, name: 'tom'}, {id: 2, name: 'rose'}]}}" wx:key="id"></view>

参考链接:

PS:写作不易,如要转裁,请标明转载出处。
%{ comment.page.total }条评论

猜你想看

微信小程序:前端开发宝典

最近文章
工具操作
  • 内容截图
  • 全屏
登录
注册
回顶部