小程序 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
    })
  }
})

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

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

相关推荐
CDwenhuohuo7 小时前
小程序全局使用api
javascript·vue.js·小程序
智慧景区与市集主理人9 小时前
市集分账混乱?巨有科技智慧小程序实现统一收款、自动分账
大数据·科技·小程序
front-end-zzq10 小时前
瘦了么打卡微信小程序
小程序
2501_9159090610 小时前
苹果App Store上架全流程指南从注册到上线
android·ios·小程序·https·uni-app·iphone·webview
全栈小510 小时前
【小程序】微信小程序在体验版发起支付的时候提示“由于小程序违规,支付功能暂时无法使用”,是不是一脸懵逼
微信小程序·小程序
jingqingdai31 天前
微信小程序 Canvas 2D 踩坑指南:如何优雅地导出高清长图?(附 AI 辅助实录)
人工智能·微信小程序·小程序
2503_928411561 天前
AI 行业正在重塑每个人的工作方式,而你需要一个更轻松的入口
人工智能·小程序
qq_433502181 天前
微信小程序更新机制踩坑记录:updateInfo 为什么总是读到旧数据?
微信小程序·小程序·notepad++
优雅的大白鹅2 天前
创建uniapp小程序
小程序·uni-app
liangdabiao2 天前
开源AI拼豆大升级 - 一键部署cloudflare page - 全免费 web和小程序
前端·人工智能·小程序