小程序 wxml 语法 —— 38 setData() - 修改数组类型数据

这一节演示如何新增、修改和删除数组类型数据,直接打开微信开发者工具进行演示;

新增数组类型数据

在 pages/cate/cate.wxml 中添加页面样式代码,如下:

html 复制代码
<view wx:for="{{ list }}" wx:key="index">{{ item }}</view>
<button type="primary" bind:tap="updateList">修改数组类型数据</button>

在 pages/cate/cate.js 中添加数据声明和新增数组类型数据的代码,如下:

javascript 复制代码
Page({
  // 在小程序页面中所需要使用的数据均来自 data 对象
  data: {
    list: [1, 2, 3]
  },

  // 更新 list
  updateList(){
    // 新增数组元素
    // 使用 push 可以新增数据,但是在页面上不会显示
    // this.data.list.push(4)

    // 方法一
    this.data.list.push(4);
    this.setData({
      list: this.data.list
    });

    // 方法二
    const newList = this.data.list.concat(4);
    this.setData({
      list: newList
    });

    // 方法三
    const newList = [...this.data.list, 4];
    this.setData({
      list: newList
    });
  }
})

刷新页面,点击按钮,可以发现数组新增了一个数值,如下所示:

修改数组类型数据

在 pages/cate/cate.js 中添加修改数组类型数据的方法,如下:

javascript 复制代码
Page({
  // 在小程序页面中所需要使用的数据均来自 data 对象
  data: {
    list: [1, 2, 3]
  },

  // 修改 list
  updateList(){
    this.setData({
      'list[1]': 6
    })
  }
})

刷新页面,点击按钮,可以发现数组数据被修改了,如下所示:

删除数组类型数据

在 pages/cate/cate.js 中删除数组类型数据的方法,如下:

javascript 复制代码
Page({
  // 在小程序页面中所需要使用的数据均来自 data 对象
  data: {
    list: [1, 2, 3]
  },

  // 删除 list
  updateList(){
    // 方法一
    this.data.list.splice(1, 1)
    this.setData({
      list: this.data.list
    })

    // 方法二
    const newList = this.data.list.filter(item => item !== 2)
    this.setData({
      list: newList
    })
  }
})

刷新页面,点击按钮,可以发现数组数据被删除了,如下所示:

参考视频:尚硅谷微信小程序开发教程

相关推荐
m0_587383003 小时前
广州24小时自助健身房解决方案实战指南与系统部署要点
java·spring·小程序·架构·需求分析
m0_587383008 小时前
西安同城拼车软件开发实战指南:从零搭建高效系统
人工智能·小程序·数据挖掘·系统架构·需求分析
weixin_lynhgworld11 小时前
抽取类盲盒小程序的五条合规红线意味着什么?
小程序
现任明教教主~12 小时前
运营级多门店洗车贴膜汽车在线核销保养服务系统洗车预约洗车系统消费分佣扫码核销系统
微信小程序·小程序·汽车
小小王app小程序开发13 小时前
盲盒微信小程序开发实战:架构、核心难点与实现方案
小程序
MoonMoonLee7 天前
小程序配置
小程序
2501_916007477 天前
苹果商店iOS应用上架费用全面解析:开发者计划与审核费用计算
android·ios·小程序·https·uni-app·iphone·webview
JQweryuiop7 天前
中小型游戏陪练工作室数字化管理实践:基于七彩屋电竞护航小程序订单、履约与绩效系统的落地复盘
大数据·游戏·小程序·架构
Ai-_Man7 天前
您您这可以把Mistral AI的多个会话比如说。左侧的多个会话一次性导出吗?不是单条会话里面的多次会对话。
人工智能·ai·小程序·电脑
2501_916008897 天前
如何实现iOS App代码混淆:SwiftShield使用指南
android·ios·小程序·https·uni-app·iphone·webview