【框架】列表的wx:key设计的是不是有问题?
文档中关于wx:key的描述如下: [代码]wx:key[代码] 的值以两种形式提供 字符串,代表在 for 循环的 array 中 item 的某个 property,该 property 的值需要是列表中唯一的字符串或数字,且不能动态改变。 保留关键字 [代码]*this[代码] 代表在 for 循环中的 item 本身,这种表示需要 item 本身是一个唯一的字符串或者数字 —————————————————————————————————————————————————— 之前没太注意这块,现在发现项目里很多地方都是这么写的: <view wx:for="{{ list }}" wx:key="{{ item.id }}">......</view> 是想将表达式{{ item.id }}的返回值作为唯一值 我的问题是,这种写法对么?列表元素可以成功复用么? 根据文档1,“代表在 for 循环的 array 中 item 的某个 property”。实际上,有没有可能把表达式{{ item.id }}的返回值当成了property,然后key用的是item[ property ],也就是 item[ item.id ] ?或者有没有可能最后key用的是item["{{ item.id }}"]?那应该都是undefined,为啥我的示例里都没有报错呢? 提供一个示例,https://developers.weixin.qq.com/s/5s3XdomT7w8T 这绝对不是一个少见的问题,我看社区里很多人都这么用了 ————————————————————————————————————————————————— 更新一下,加一个示例,这个示例的现象也不太正常:https://developers.weixin.qq.com/s/AytL4pmM7k8p ————————————————————————————————————————————————— 原来这个问题存在快1年了 https://developers.weixin.qq.com/community/develop/doc/000c2074590aa08e98372150c5b000?highLine=wx%253Akey 这篇文章的作者是严谨的,而回答全是瞎扯 https://developers.weixin.qq.com/community/develop/doc/000a82ab2d07682a699788d585bc00?highLine=wx%253Akey 这篇文章的作者遇到的现象是诡异的,而回答给他的解决方案,瞎扯 https://developers.weixin.qq.com/community/develop/doc/00062ec7eecea8f64427829ab5b400 这篇文章官方回答了,但是太言简意赅,导致底下的回答还是在瞎扯 https://developers.weixin.qq.com/community/develop/doc/000ee2aca04a102195278397e51c04 这篇文章,从头到位都是瞎扯 其实我上面的瞎扯都想用放屁来代替的,就这么个问题,磨磨唧唧弄了这么久,大部分人都还是在瞎搞。是当初设计的锅?还是文档没写清楚的锅?还是因为官方的不重视?还是社区质量太差? 即便严格按照文档的说法,我上面的两个示例还是解释不通的,哎。。。