找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索本站精品资源

首页 教程频道 小程序开发 查看内容

解决列表渲染时,动态修改某一条数据的问题

作者:模板之家 2018-1-30 10:56 1916人关注

今天在git上遇到一个提问,问题如下: 嗯,顺便问个问题。 就是假设:循环列出一组电影列表,然后要给电影增加点赞功能。这个点赞操作怎么实现呢? 类似: view bindtap=aa data-id=a1

今天在git上遇到一个提问,问题如下:
嗯,顺便问个问题。
就是假设:循环列出一组电影列表,然后要给电影增加点赞功能。这个点赞操作怎么实现呢?
类似:
<view bindtap='aa' data-id="a1">{{zan}}</view>
<view bindtap='aa' data-id="a2">{{zan}}</view>
......
点击点赞后,应该都是到同个aa方法,然后去修改zan的值去修改图标,显示点赞了。
遇到的问题:修改zan的值,会修改所有的列表。
谢谢了



暂时没有想到好的方式,就先用如下方式解决了

<view bindtap="aa" wx:for="{{array}}"  data-id='{{item.id}}'>
   {{item.zan}}

</view>

Page({
  data:{

     array: [

      {

        id:"a1",

        zan: '赞'

      }, 

      {

        id:"a2",

        zan: '赞'

      }

    ]

  },

aa:function(e){
    var currId = e.currentTarget.dataset.id;

    var array = this.data.array;

    for(var i = 0;i<array.length;i++){

      if(array['id']==currId){

        array['zan'] = "已赞";

        this.setData({

          array:array

        });

      }

    }

  }


不一定是最好的方式,如果有更好的方式也可以发帖回复,大家学习学习,谢谢了


路过

雷人

握手

鲜花

鸡蛋
原作者: 模板之家 来自: 网络收集

全部回复(0)