热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

微信小程序更改刷新data数组结构里的某一项数据

这是我的小程序简单效果图每一个panel是一个类别每次点击查看更多需要调用接口刷新当前类别的数据因为这是分类是一个数据于是我定义成一个data数组data:{

这是我的小程序简单效果图

每一个panel 是一个类别  每次点击查看更多 需要调用接口刷新当前类别的数据

因为这是分类是一个数据 于是我定义成一个data  数组

data: {
    category_list:[
      { id: 1, name: '阅读', show: false, loading: true, news_list: [] },
      { id: 2, name: '重复', show: false, loading: true, news_list: [] },
      { id: 3, name: '停留', show: false, loading: true, news_list: [] },
      { id: 4, name: '转发', show: false, loading: true, news_list: [] },
      { id: 5, name: '评论', show: false, loading: true, news_list: [] },
      { id: 6, name: '点赞', show: false, loading: true, news_list: [] },
      { id: 7, name: '搞笑', show: false, loading: true, news_list: [] },
      { id: 8, name: '实用', show: false, loading: true, news_list: [] },
      { id: 9, name: '着数', show: false, loading: true, news_list: [] },
      { id: 10,name: '最美', show: false, loading: true, news_list: [] },
      { id: 11,name: '最萌', show: false, loading: true, news_list: [] },
      ]
  },

这是我小程序的data 

因为每次刷新我只需要更新对应的item  如果每次setData  category_list 整个数组, 感觉会消耗性能 ,所以只需要setData刷新对应的item  

只需要通过 以下方式解决    

this.setData({
   'array[0].text': 'update data'
})
//如果索引是动态的 则使用下方方式
var  mText = 'array['+ index +'].text';
this.setData({
   [mText]: 'update data'
})
这是我示例中的方法
//加载列表,index 索引  showAll是否显示全部
  getList: function (index,showAll){
    var mLoading = 'category_list[' + index + '].loading'
    var mNewsList = 'category_list[' + index + '].news_list'
    var mShowAll = 'category_list[' + index + '].show'
    var that = this;
    that.setData({
      [mNewsList]: [],
      [mLoading]: true
    })
    var category = this.data.category_list;
    var post_data = {
      category_id: category[index].id,
      filter_date: 0
    };
    api.getNewsList(function (data) {
      that.setData({
        [mLoading]: false,
        [mShowAll]: showAll
      })
      if (data.code == 200) {
        console.log(mLoading);
        that.setData({
          [mNewsList]: data.data
        })
      } else {
        wx.showModal({
          title: '',
          content: data.msg,
          showCancel: false
        })
      }

    }, post_data);
  }



推荐阅读
  • 本文介绍了Web学习历程记录中关于Tomcat的基本概念和配置。首先解释了Web静态Web资源和动态Web资源的概念,以及C/S架构和B/S架构的区别。然后介绍了常见的Web服务器,包括Weblogic、WebSphere和Tomcat。接着详细讲解了Tomcat的虚拟主机、web应用和虚拟路径映射的概念和配置过程。最后简要介绍了http协议的作用。本文内容详实,适合初学者了解Tomcat的基础知识。 ... [详细]
  • 本文介绍了在MFC下利用C++和MFC的特性动态创建窗口的方法,包括继承现有的MFC类并加以改造、插入工具栏和状态栏对象的声明等。同时还提到了窗口销毁的处理方法。本文详细介绍了实现方法并给出了相关注意事项。 ... [详细]
  • 微信小程序导航跟随的实现方法
    本文介绍了在微信小程序中实现导航跟随的方法。通过设置导航的position属性和绑定滚动事件,可以实现页面向下滚动到导航位置时,导航固定在页面最上方;页面向上滚动到导航位置时,导航恢复到原始位置;点击导航可以平滑跳转到相应位置。代码示例也给出了具体实现方法。 ... [详细]
  • GetWindowLong函数
    今天在看一个代码里头写了GetWindowLong(hwnd,0),我当时就有点费解,靠,上网搜索函数原型说明,死活找不到第 ... [详细]
  • Iamtryingtomakeaclassthatwillreadatextfileofnamesintoanarray,thenreturnthatarra ... [详细]
  • Spring源码解密之默认标签的解析方式分析
    本文分析了Spring源码解密中默认标签的解析方式。通过对命名空间的判断,区分默认命名空间和自定义命名空间,并采用不同的解析方式。其中,bean标签的解析最为复杂和重要。 ... [详细]
  • PHP图片截取方法及应用实例
    本文介绍了使用PHP动态切割JPEG图片的方法,并提供了应用实例,包括截取视频图、提取文章内容中的图片地址、裁切图片等问题。详细介绍了相关的PHP函数和参数的使用,以及图片切割的具体步骤。同时,还提供了一些注意事项和优化建议。通过本文的学习,读者可以掌握PHP图片截取的技巧,实现自己的需求。 ... [详细]
  • 向QTextEdit拖放文件的方法及实现步骤
    本文介绍了在使用QTextEdit时如何实现拖放文件的功能,包括相关的方法和实现步骤。通过重写dragEnterEvent和dropEvent函数,并结合QMimeData和QUrl等类,可以轻松实现向QTextEdit拖放文件的功能。详细的代码实现和说明可以参考本文提供的示例代码。 ... [详细]
  • Commit1ced2a7433ea8937a1b260ea65d708f32ca7c95eintroduceda+Clonetraitboundtom ... [详细]
  • PHP中的单例模式与静态变量的区别及使用方法
    本文介绍了PHP中的单例模式与静态变量的区别及使用方法。在PHP中,静态变量的存活周期仅仅是每次PHP的会话周期,与Java、C++不同。静态变量在PHP中的作用域仅限于当前文件内,在函数或类中可以传递变量。本文还通过示例代码解释了静态变量在函数和类中的使用方法,并说明了静态变量的生命周期与结构体的生命周期相关联。同时,本文还介绍了静态变量在类中的使用方法,并通过示例代码展示了如何在类中使用静态变量。 ... [详细]
  • springmvc学习笔记(十):控制器业务方法中通过注解实现封装Javabean接收表单提交的数据
    本文介绍了在springmvc学习笔记系列的第十篇中,控制器的业务方法中如何通过注解实现封装Javabean来接收表单提交的数据。同时还讨论了当有多个注册表单且字段完全相同时,如何将其交给同一个控制器处理。 ... [详细]
  • 标题: ... [详细]
  • 本文介绍了南邮ctf-web的writeup,包括签到题和md5 collision。在CTF比赛和渗透测试中,可以通过查看源代码、代码注释、页面隐藏元素、超链接和HTTP响应头部来寻找flag或提示信息。利用PHP弱类型,可以发现md5('QNKCDZO')='0e830400451993494058024219903391'和md5('240610708')='0e462097431906509019562988736854'。 ... [详细]
  • 面试经验分享:华为面试四轮电话面试、一轮笔试、一轮主管视频面试、一轮hr视频面试
    最近有朋友去华为面试,面试经历包括四轮电话面试、一轮笔试、一轮主管视频面试、一轮hr视频面试。80%的人都在第一轮电话面试中失败,因为缺乏基础知识。面试问题涉及 ... [详细]
  • 微信民众号商城/小顺序商城开源项目介绍及使用教程
    本文介绍了一个基于WeiPHP5.0开发的微信民众号商城/小顺序商城的开源项目,包括前端和后端的目录结构,以及所使用的技术栈。同时提供了项目的运行和打包方法,并分享了一些调试和开发经验。最后还附上了在线预览和GitHub商城源码的链接,以及加入前端交流QQ群的方式。 ... [详细]
author-avatar
小东东5201314
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有