关于wx:for 动态循环一个数组的情况

项目需要是进入微信小程序,在onLoad 函数中使用wx.request 向服务器发起请求,然后将请求通过this.setData 保存到一个data:{items:[]}属性中,在页面中使用<block wx:for="{{itmes}}">{{item.name}}</block> 却没有数据,这是为什么呢?

// index.wxml
<block wx:for="{{itmes}}">
    <view class='item'>
          <text>{{item.name}}</text>
          <text>{{item.desc}}</text>
     </view>
</block>
// index.js
    data:{
      items:[]
    },
   onLoad: function () {
    var that = this;
    wx.request({
      url: 'http://localhost:8888/test.php',
      success: (res) => {
        console.log(res)
        // 可以正确输出数组数据
   
        that.setData({
          items: res
        })
        console.log(that.data.activity)
        // 也可以正确输出数据
      }
    })

实在是没有想通是怎么回事,我以为是异步的问题,所以使用点击按钮发起请求的方式试验了一次,结果相同.

阅读 8.7k
3 个回答
that.setData({
          activity: res
        })

你把数据存在data.activity中,渲染页面的是data.items 怎么会有数据呢?

新手上路,请多包涵

是res.data么...先打印下回调函数里有没有接受到数据啊。。。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题