收藏
回答

关于wx:for循环遍历数组?


我有一个问题不太懂 通过调用接口 然后获取到里面的东西填上去,这个我懂。但是就是如果有两条 三条 多条这样的,里面的参数都是变量 是可以变换的。但是html里面只有一个呀,这怎么实现展示多条数据?


就像这个样子。是不是用wx:for循环代替里面的内容 就可以多行使用那些标签??但是就是 就算是我用循环写出来了 还有个点击进去详情查看 肯定是要绑点击事件的。。。我这个循环的内容要怎么绑点击事件??


回答关注问题邀请回答
收藏

3 个回答

  • 陈宇明
    陈宇明
    2019-09-18
    1. 添加点击事件

    2. 传入id

    3. 处理id

    2019-09-18
    有用
    回复
  • TNT
    TNT
    2019-09-16

    简单说下吧~我就直接上代码了

    循环的东西 每个都有一个index,并且有我们自定义的Id等(这里以detailId)举例

    数组格式:list: [{detailId: 10000, title: '我是第一个'},{detailId: 10001, title: '我是第二个'}]

    wxml:

    <view wx:for="{{list}}" wx:key="{{index}}" data-id="{{item.detailId}}" bindtap="handleClick">{{item.title}}</view>

    //需要注意 data-xxx 建议小写,比如:data-detailId 。在这里大写,在js里就是小写 detailid

    js:

    handleClick(e) {     console.log(e)  //这里拿到view上使用data-xx绑定的key名     const id = e.currentTarget.dataset.id    wx.navigateTo({         url: `/pages/detail/detail?detailId=${id}`     }) }


    上面格式乱的,我就截图了。



    2019-09-16
    有用
    回复 9
    • 窒息的风
      窒息的风
      2019-09-16
      老铁666
      2019-09-16
      回复
    • TNT
      TNT
      2019-09-16回复窒息的风
      脑壳痛,感觉在带学弟一样~
      2019-09-16
      回复
    • PG.
      PG.
      2019-09-17
      循环是搞明白了,但是就是点击事件肯定是绑在一个上面,然后循环了多个,每一个都能点击,然后就是肯定是需要页面的,这怎么绑定???
      2019-09-17
      回复
    • TNT
      TNT
      2019-09-17回复PG.
      我上面代码写了 大哥。data-xxx 就是这个item独有的属性。点击的时候通过 e.currentTarget.dataset.xxx拿到这个值。进行操作
      2019-09-17
      回复
    • PG.
      PG.
      2019-09-17
      也就是说写一个点击过去的页面模板,通过传值来判断显示内容。。
      2019-09-17
      回复
    查看更多(4)
  • zy
    zy
    2019-09-16

    就按照常规的绑定事件呀,事件名都一样,跳转到相应的详情时带不同的参数(比如当前项的id),带过去 你的详情是根据这个id显示与之对应的内容

    2019-09-16
    有用
    回复
登录 后发表内容
问题标签