微信小程序开发系列(十九)·wxml语法·setData()修改数据

2024-03-06 06:44

本文主要是介绍微信小程序开发系列(十九)·wxml语法·setData()修改数据,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

目录

步骤一:创建一个data对象

步骤二:双大括号写法的使用

步骤三:创建一个更新事件按钮

步骤四:定义事件处理函数·获取数据

步骤五:定义事件处理函数·修改数据

方法一:通过赋值的方式直接修改数据 

方法二:通过setData()方法

总结


        小程序中修改数据不推荐通过赋值的方式进行修改,通过赋值的方式修改数据无法改变页面的数据,而是要通过调用setData()方法进行修改,setData()方法接收对象作为参数,key是需要修改的数据,value是最新的值。

setData()方法有两个作用:

1.  更新数据

2.  驱动视图更新

步骤一:创建一个data对象

        找到index.js文件,将page内的代码删除,创建一个 data 对象:


Page({data:{num: 1}
}) 

步骤二:双大括号写法的使用

        找到index.wxml文件,将其内容删除,编写代码:

<view>{{ num }}</view>

步骤三:创建一个更新事件按钮

        在index.wxml创建一个更新事件:

<button bind:tap="updateNum">更新 num</button>

步骤四:定义事件处理函数·获取数据

        可以通过this获取数据:


Page({data:{num: 1},// 更新 numupdateNum(){// 获取数据console.log(this.data.num)}
}) 

步骤五:定义事件处理函数·修改数据

方法一:通过赋值的方式直接修改数据 
  // 通过赋值的方式直接修改数据this.data.num += 1console.log(this.data.num)

        可以看出这种方法能够修改数据,但是不能改变页面上的数据:

完整代码:


Page({data:{num: 1},// 更新 numupdateNum(){// 获取数据// console.log(this.data.num)// 通过赋值的方式直接修改数据this.data.num += 1console.log(this.data.num)//能够修改数据,但是不能改变页面上的数据}
}) 
方法二:通过setData()方法

        通过调用setData()方法进行修改,setData()方法接收对象作为参数,key是需要修改的数据,value是最新的值。

  this.setData({// key:是需要更新的数据// value:是最新的值num: this.data.num + 1})console.log(this.data.num)

        可以发现此时既能够修改数据,也能改变页面上的数据:

此时代码:


Page({data:{num: 1},// 更新 numupdateNum(){// 获取数据// console.log(this.data.num)// 通过赋值的方式直接修改数据// this.data.num += 1// console.log(this.data.num)//能够修改数据,但是不能改变页面上的数据// setData()方法有两个作用:// 1.  更新数据// 2.  驱动视图更新this.setData({// key:是需要更新的数据// value:是最新的值num: this.data.num + 1   })console.log(this.data.num)}
}) 

总结

        微信小程序中的setData()方法用于修改页面数据并实时更新视图,是实现动态数据绑定的重要方法之一。当数据发生变化时,可以通过调用setData()方法来更新页面上相应的数据,并自动触发视图的更新,以确保用户界面与最新的数据保持同步。

        使用setData()方法需要传入一个对象,该对象包含需要更新的数据字段及其对应的数值。当调用setData()方法后,页面上绑定了被修改数据的部分将会自动更新,反映最新的数据状态。

        在微信小程序中,使用setData()方法修改对象数据类型是一种常见的操作,可以实现动态更新页面上展示的对象数据。当页面需要展示对象类型的数据,并且该对象的属性值可能会发生变化时,就可以通过setData()方法来更新对象数据。

具体而言,通过setData()方法可以实现以下操作:

  1. 更新对象的特定属性: 可以通过指定对象属性的路径来更新对象中的特定属性。例如,使用this.setData({'person.name':'Bob'}) 可以更新对象中的name属性为'Bob'。

  2. 替换整个对象: 除了更新单个属性外,也可以通过直接替换整个对象来更新对象数据。例如,使用 this.setData({person:{ name : 'Charlie', age: 35, gender: 'male'}})可以替换整个person对象。

  3. 触发视图更新: 调用setData()方法后,会自动触发页面视图的更新,确保页面上展示的数据与最新的对象数据保持同步。

微信小程序开发_时光の尘的博客-CSDN博客

这篇关于微信小程序开发系列(十九)·wxml语法·setData()修改数据的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!


原文地址:
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.chinasem.cn/article/779159

相关文章

Python处理超大规模数据的4大方法详解

《Python处理超大规模数据的4大方法详解》在数据的奇妙世界里,数据量就像滚雪球一样,越变越大,从最初的GB级别的小数据堆,逐渐演变成TB级别的数据大山,所以本文我们就来看看Python处理... 目录1. Mars:数据处理界的 “变形金刚”2. Dask:分布式计算的 “指挥家”3. CuPy:GPU

Python对PDF书签进行添加,修改提取和删除操作

《Python对PDF书签进行添加,修改提取和删除操作》PDF书签是PDF文件中的导航工具,通常包含一个标题和一个跳转位置,本教程将详细介绍如何使用Python对PDF文件中的书签进行操作... 目录简介使用工具python 向 PDF 添加书签添加书签添加嵌套书签Python 修改 PDF 书签Pytho

SpringBoot后端实现小程序微信登录功能实现

《SpringBoot后端实现小程序微信登录功能实现》微信小程序登录是开发者通过微信提供的身份验证机制,获取用户唯一标识(openid)和会话密钥(session_key)的过程,这篇文章给大家介绍S... 目录SpringBoot实现微信小程序登录简介SpringBoot后端实现微信登录SpringBoo

使用Vue-ECharts实现数据可视化图表功能

《使用Vue-ECharts实现数据可视化图表功能》在前端开发中,经常会遇到需要展示数据可视化的需求,比如柱状图、折线图、饼图等,这类需求不仅要求我们准确地将数据呈现出来,还需要兼顾美观与交互体验,所... 目录前言为什么选择 vue-ECharts?1. 基于 ECharts,功能强大2. 更符合 Vue

Java如何根据word模板导出数据

《Java如何根据word模板导出数据》这篇文章主要为大家详细介绍了Java如何实现根据word模板导出数据,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... pom.XML文件导入依赖 <dependency> <groupId>cn.afterturn</groupId>

Python实现获取带合并单元格的表格数据

《Python实现获取带合并单元格的表格数据》由于在日常运维中经常出现一些合并单元格的表格,如果要获取数据比较麻烦,所以本文我们就来聊聊如何使用Python实现获取带合并单元格的表格数据吧... 由于在日常运维中经常出现一些合并单元格的表格,如果要获取数据比较麻烦,现将将封装成类,并通过调用list_exc

Mysql数据库中数据的操作CRUD详解

《Mysql数据库中数据的操作CRUD详解》:本文主要介绍Mysql数据库中数据的操作(CRUD),详细描述对Mysql数据库中数据的操作(CRUD),包括插入、修改、删除数据,还有查询数据,包括... 目录一、插入数据(insert)1.插入数据的语法2.注意事项二、修改数据(update)1.语法2.有

SpringBoot实现接口数据加解密的三种实战方案

《SpringBoot实现接口数据加解密的三种实战方案》在金融支付、用户隐私信息传输等场景中,接口数据若以明文传输,极易被中间人攻击窃取,SpringBoot提供了多种优雅的加解密实现方案,本文将从原... 目录一、为什么需要接口数据加解密?二、核心加解密算法选择1. 对称加密(AES)2. 非对称加密(R

详解如何在SpringBoot控制器中处理用户数据

《详解如何在SpringBoot控制器中处理用户数据》在SpringBoot应用开发中,控制器(Controller)扮演着至关重要的角色,它负责接收用户请求、处理数据并返回响应,本文将深入浅出地讲解... 目录一、获取请求参数1.1 获取查询参数1.2 获取路径参数二、处理表单提交2.1 处理表单数据三、

Spring Validation中9个数据校验工具使用指南

《SpringValidation中9个数据校验工具使用指南》SpringValidation作为Spring生态系统的重要组成部分,提供了一套强大而灵活的数据校验机制,本文给大家介绍了Spring... 目录1. Bean Validation基础注解常用注解示例在控制器中应用2. 自定义约束验证器定义自