[WXML Runtime warning] ./pages/home/home.wxml wx:key="icon.name" does not look like a valid key name (did you mean wx:key="name" ?) 7 | </swiper> 8 | <view class = 'navs'> > 9 | <view wx:for = '{{icons}}' wx:for-item = 'icon' wx:key = 'icon.name' class='nav-item'> | ^ 10 | <navigator url = '{{icon.link}}' open-type="navigate"> 11 | <image src = '{{icon.imgUrl}}' class='iconPic'></image> 12 | <view class="iconTitle">{{icon.name}}</view>
时间: 2024-02-19 20:57:51 浏览: 86
官方问答精选《十二》wx.checkSession,服务号和小程序用户的信息关联 ...
这是一个 WXML 运行时的警告,意思是 'wx:key="icon.name"' 不是一个有效的 key 名称,建议使用 'wx:key="name"' 代替。
这个警告出现的原因是在一个 wx:for 的循环中,使用了错误的 key 值。在这段代码中,wx:for 遍历了一个名为 icons 的数组,每个数组元素都是一个包含 name、link、imgUrl 属性的对象。而在 wx:key 属性中,使用了 'icon.name' 作为 key 值,但实际上这不是一个合法的 key 名称,因为在每个对象中,'name' 才是代表唯一性的属性。因此,应该使用 'wx:key="name"' 代替。
正确的代码应该是这样的:
```
<swiper class='banner' autoplay='true' indicator-dots='true'>
<swiper-item wx:for="{{banners}}" wx:key="imgUrl">
<image src="{{item.imgUrl}}" class='swiper-item'></image>
</swiper-item>
</swiper>
<view class='navs'>
<view wx:for='{{icons}}' wx:for-item='icon' wx:key='name' class='nav-item'>
<navigator url='{{icon.link}}' open-type='navigate'>
<image src='{{icon.imgUrl}}' class='iconPic'></image>
<view class='iconTitle'>{{icon.name}}</view>
</navigator>
</view>
</view>
```
这样修改后,就可以避免这个警告了。
阅读全文