先上源代码

<view class="item{
   { item.completed ? ' completed' : '' }}" wx:for="{
   {todos}}" catchtap="switchStateHandle" data-index="{
   { index }}" wx:key="{
   { index }}">

报错详情

wx:key="{
   { index }}" does not look like a valid key name (did you mean wx:key="index" ?)

说的很明白了,问题就是出在wx:key="{ { index }}"上,

解决方法

1.字符串,代表在 for 循环的数组中每一项的某个独有标识(例如给每一项加上id),该独有标识需要是列表中唯一的字符串或数字,且不能动态改变。

wx:key="id"

2.保留关键字, 假如没有独有标识,就使用*this,*this 代表在 for 循环中的 item 本身,这种表示需要 item 本身是一个唯一的字符串或者数字。

wx:key="*this"

官网解释:https://developers.weixin.qq.com/miniprogram/dev/reference/wxml/list.html