小程序中this(1)

news2024/11/17 19:36:38

},

onLoad: function() {},

})

此时经过编译后模拟器的显示:

这里都容易理解,当点击了button按钮后,触发点击事件执行testfun函数,将test02设置为8,如图:

通过this.data.test02=8这种方式直接赋值可以吗,答案是不可以,看下面:

使用this.data.test02=10的结果不会渲染到前台页面中显示,但是后台已经改变,会造成前后台数据不一致。

我又想到是不是可以先通过this.data.test02=10赋值,再通过this.setData渲染呢?

onLoad: function() {

this.data.test02 = 10;

this.setData({

test02

})

}

编译后显示:

发现了什么?我个人觉得是这样的:

一、this.setData中设置的key如果只有key没有value,则从所在函数内找这个变量,找到之后渲染到前台指定位置。

(1)如果Page对象的data中没有定义该key,则setData自动创建,这个可以从打印结果中发现(this.data.test03,data中没有定义)。

(2)如果Page对象的data中已经定义该变量,则修改data中原变量的值。

二、this.setData中设置的key如果有key有value,直接渲染到前台并修改原data中的数据。

注意事项:

上面演示的使用说明也算是注意事项吧,理解透彻才能运用自如,避免数据混乱。

另外给出官方的setData建议:https://developers.weixin.qq.com/miniprogram/dev/framework/performance/tips.html

常见的 setData 操作错误

1. 频繁的去 setData

在我们分析过的一些案例里,部分小程序会非常频繁(毫秒级)的去setData,其导致了两个后果:

Android 下用户在滑动时会感觉到卡顿,操作反馈延迟严重,因为 JS 线程一直在编译执行渲染,未能及时将用户操作事件传递到逻辑层,逻辑层亦无法及时将操作处理结果及时传递到视图层;

渲染有出现延时,由于 WebView 的 JS 线程一直处于忙碌状态,逻辑层到页面层的通信耗时上升,视图层收到的数据消息时距离发出时间已经过去了几百毫秒,渲染的结果并不实时;

其实前端开发的知识点就那么多,面试问来问去还是那么点东西。所以面试没有其他的诀窍,只看你对这些知识点准备的充分程度。so,出去面试时先看看自己复习到了哪个阶段就好。

这里再分享一个复习的路线:(以下体系的复习资料是我从各路大佬收集整理好的)

《前端开发四大模块核心知识笔记》

最后,说个题外话,我在一线互联网企业工作十余年里,指导过不少同行后辈。帮助很多人得到了学习和成长。

我意识到有很多经验和知识值得分享给大家,也可以通过我们的能力和经验解答大家在IT学习中的很多困惑,所以在工作繁忙的情况下还是坚持各种整理和分享。

1.png)

最后,说个题外话,我在一线互联网企业工作十余年里,指导过不少同行后辈。帮助很多人得到了学习和成长。

我意识到有很多经验和知识值得分享给大家,也可以通过我们的能力和经验解答大家在IT学习中的很多困惑,所以在工作繁忙的情况下还是坚持各种整理和分享。

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

音乐创作与制作软件:Studio One 6.6.1中文版安装激活使用指南

音乐创作与制作软件:Studio One 6.6.1 简介 StudioOne 的设计核心是易于使用。十年来,它已将久经考验的录音棚模型与当今以节拍和循环为导向的制作过程无缝地结合在一起,因此您可以比以往更快地将音乐创意带入声音现实。高效的单屏幕界面可…

酷开系统丨酷开科技AI赋能数字大屏,开启智能家居新纪元

在当今数字化时代,人工智能(AI)技术的崛起无疑为科技领域带来了革命性的变化。酷开科技,正以其独特的"AI数字大屏"战略,将创新理念转化为现实,引领行业发展新潮流。 酷开科技的智能电视操作系统…

芯片设计公司供应链软件管理包括哪些内容

芯片设计公司的供应链软件管理是一个复杂而精细的过程,它涵盖了从原材料采购到最终产品交付的各个环节。以下是关于芯片设计公司供应链软件管理内容的科普介绍。 首先,供应链软件管理的起点是原材料采购。这部分内容主要关注确保供应商提供高质量、符合设…

【C++】相机标定源码笔记-相机内参标定类

相机内参标定类 该代码是一个关于摄像头内参处理类的实现。它主要做了以下几件事情: 1. 提供读取和保存相机内参的功能。 2. 允许用户设置一系列参数(如图像尺寸、棋盘格尺寸等)。 3. 支持从图像中检测棋盘格角点,并根据检测到的角…

每台电脑的ip地址是随机改动的吗

在数字化快速发展的今天,互联网已成为我们生活和工作的重要组成部分。当我们使用电脑上网时,IP地址作为电脑在网络中的唯一标识,起到了至关重要的作用。然而,很多人对于IP地址的分配和变化存在疑问,尤其是关于每台电脑…

上涨至13.6分!当之无愧的顶级期刊,影响因子“狂飙”,门槛较低,2个月可录!

本期解析 1、2024年6月20日,科睿唯安正式公布2024年度《期刊引证报告》。 2、本次主要解析Elsevier旗下一本TOP顶刊,期刊表现优秀,在最新的影响因子更新中由12.8上涨至13.6,是一本妥妥评职高分宝刊!接下来看看它是否…

系统思考—啤酒游戏经营决策沙盘

在日常的教学中,我们通过系统思考仿真演练深入探索决策背后的动因。例如,我经常教授的麻省理工学院研发的“啤酒游戏”和“人民航空策略模拟”,这些都是麻省理工MBA学生的必修课。此外,还有更简洁的“红黑游戏”“收获季节”等模拟…

04 Shell编程之正则表达式与文本处理器

1、正则表达式 1.1 正则表达式的定义 正则表达式又称为正规表达式、常规表达式。 正则表达式是使用单个字符来描述、匹配一系列符合某个句法规则的字符串, 简单来说,正则表达式就是一种匹配字符串的方法(通过一些特殊符号,实现…

vant4好玩的新组件

1.Barrage 弹幕 模拟视频弹幕 设置 auto-play 为 false 属性后&#xff0c;需要使用 play() 进行弹幕播放&#xff0c;暂停可以使用 pause() 实现。<van-barrage v-model"list" ref"barrage" :auto-play"false"><div class"video&…

PostgreSQL使用教程

安装 PostgreSQL 您可以从 PostgreSQL 官方网站下载适合您操作系统的安装程序&#xff0c;并按照安装向导进行安装。 启动数据库服务器 安装完成后&#xff0c;根据您的操作系统&#xff0c;通过相应的方式启动数据库服务器。 连接到数据库 可以使用命令行工具&#xff08;如 p…

Spring Cloud Netflix:构建强大微服务生态系统的利器

Spring Cloud Netflix是一组集成框架&#xff0c;它将Netflix的多个开源组件整合到Spring Boot应用程序中&#xff0c;使得构建云原生应用程序变得更加简单。这些组件包括用于服务发现和注册的Eureka&#xff0c;断路器模式的实现Hystrix&#xff0c;用于API网关的Zuul&#xf…

项目管理:如何解决项目延期的那些问题?

在项目管理中&#xff0c;项目延期是一种普遍现象&#xff0c;也管理者最为头疼的一个问题。为了有效地解决项目延期问题&#xff0c;我们需要从多个方面入手&#xff1a; 1、快速识别原因&#xff1a;当项目出现延期迹象时&#xff0c;首要任务是迅速识别并定位导致延期的根…

kettle创建资源库无法登录问题

问题&#xff1a;You dont seem to be getting a connection to the server. Please check the path youre using and make sure the server is up and running. 1. 删除资源库 2.删除数据库中R_开头的表 3.重新创建资源库连接&#xff0c;查看是否成功产生表 4.创建成功&…

[windows] 无拓展名文件设置默认打开方式为记事本

前言 本文是对[windows] 无拓展名文件设置默认打开方式_给无后缀文件添加打开方式选项-CSDN博客 的细节上的补充&#xff0c;对小白更友好。建议对照引用的博客观看。 管理员状态运行cmd 右键左下角开始位置&#xff0c;出现 左键点击打开终端管理员。 进去后直接输入cmd即…

考研选学硕还是专硕?综合考虑哪个更难?

看录取分数&#xff0c;哪个相对容易一些考哪一个。如果未来对读博有想法的话&#xff0c;学硕可能更适合一些。大部分学校的学硕分数还是要高一些的&#xff0c;对于想要上岸一定要抓住数学和专业课。 24数学总体要比23年难不少&#xff0c;主要难在计算量大&#xff0c;尤其…

大模型AI技术实现语言规范练习

人工智能技术可以为语言规范练习提供多种有效的解决方案&#xff0c;帮助学习者更有效地掌握语言规范。以下是一些常见的应用场景。北京木奇移动技术有限公司&#xff0c;专业的软件外包开发公司&#xff0c;欢迎交流合作。 1. 智能纠错 利用自然语言处理技术&#xff0c;可以…

如何为软件工程优化ChatGPT和其他大模型

自ChatGPT发布以来&#xff0c;上至企业、下到软件工程师都在致力于寻找如何通过使用大语言模型&#xff08;LLM&#xff09;&#xff0c;来提高工作效率的方法。虽然大多数LLM都能够为复杂的问题生成代码示例&#xff0c;但是具体如何将其集成到软件开发环境的过程&#xff0c…

2024-6-26 石群电路-30

2024-6-26&#xff0c;星期三&#xff0c;10:38&#xff0c;天气&#xff1a;雨&#xff0c;心情&#xff1a;晴。今天没有什么事情发生&#xff0c;继续学习&#xff0c;加油&#xff01;&#xff01;&#xff01;&#xff01;&#xff01; 今日观看了石群老师电路课程的视频…

有两个长方柱,其高、宽、长分别为12,20,25;10,14,20。求它们的体积。编写一个基于对象的程序,在类中用带参数的构造函数对数据成员初始化

在上一篇文章中的构造函数不带参数&#xff0c;在函数体中对数据成员赋初值。这种方式使该类的每一个对象的数据成员都得到同一组初值&#xff08;例中各个对象的数据成员的初值均为0)。但有时用户希望对不同的对象赋予不同的初值&#xff0c;这时就无法使用上面的办法来解决了…

数字化工厂生产管理看板系统如何优化生产流程

在当今高度数字化的时代&#xff0c;制造业正经历着深刻的变革&#xff0c;数字化工厂生产管理看板系统作为一种创新的工具&#xff0c;正在为优化生产流程发挥着关键作用。 数字化工厂生产管理看板系统是一个集数据采集、分析、展示和决策支持于一体的综合性平台。生产管理看板…