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

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

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

相关推荐
宁夏雨科网14 小时前
文具办公用品小程序商城,开发一个难吗
小程序·商城小程序·文具小程序·文具商城
说私域21 小时前
开源链动2+1模式商城小程序在深度分销数字化转型中的应用研究
人工智能·小程序·开源·流量运营·私域运营
咖啡の猫1 天前
微信小程序案例 - 自定义 tabBar
微信小程序·小程序·notepad++
咖啡の猫1 天前
微信小程序全局数据共享
微信小程序·小程序
桐溪漂流1 天前
微信小程序cli脚本预览上传
微信小程序·小程序
咖啡の猫1 天前
微信小程序使用 npm 包
微信小程序·小程序·npm
说私域1 天前
开源链动2+1模式商城小程序的营销技术与私域运营策略研究
人工智能·小程序·开源·流量运营·私域运营
小小王app小程序开发2 天前
淘宝扭蛋机小程序核心玩法拆解与技术运营分析
大数据·小程序
说私域2 天前
AI智能名片商城小程序数据清洗的持续运营策略与实践研究
大数据·人工智能·小程序·流量运营·私域运营
东东5162 天前
xxx食堂移动预约点餐系统 (springboot+微信小程序)
spring boot·微信小程序·小程序·毕业设计·个人开发·毕设