潍坊网站建设小程序制作网络优化工程师主要做什么

diannao/2025/10/14 3:31:14/文章来源:
潍坊网站建设小程序制作,网络优化工程师主要做什么,宁波网络公司在哪里,这几年做啥网站致富目录 1.响应式说明 2.vue3的ref及reactive的使用 3.reactive响应式失效问题 4.总结 1.响应式说明 vue的响应式是vue框架中的核心概念之一#xff0c;它是指当数据发生变化时#xff0c;vue能够自动更新视图。vue2的响应式是基于Object.defineProperty进行实现的。 当你把…目录 1.响应式说明 2.vue3的ref及reactive的使用 3.reactive响应式失效问题 4.总结 1.响应式说明 vue的响应式是vue框架中的核心概念之一它是指当数据发生变化时vue能够自动更新视图。vue2的响应式是基于Object.defineProperty进行实现的。 当你把一个普通的 JavaScript 对象传入 Vue 实例作为 data 选项Vue 将遍历此对象所有的 property并使用 Object.defineProperty 把这些 property 全部转为 getter/setter。Object.defineProperty 是 ES5 中一个无法 shim 的特性这也就是 Vue 不支持 IE8 以及更低版本浏览器的原因。 这些 getter/setter 对用户来说是不可见的但是在内部它们让 Vue 能够追踪依赖在 property 被访问和修改时通知变更。这里需要注意的是不同浏览器在控制台打印数据对象时对 getter/setter 的格式化并不同所以建议安装 vue-devtools 来获取对检查数据更加友好的用户界面。 每个组件实例都对应一个 watcher 实例它会在组件渲染的过程中把“接触”过的数据 property 记录为依赖。之后当依赖项的 setter 触发时会通知 watcher从而使它关联的组件重新渲染。 vue3的响应式是通过ref及reactive来声明响应式状态。 当你在模板中使用了一个 ref然后改变了这个 ref 的值时Vue 会自动检测到这个变化并且相应地更新 DOM。这是通过一个基于依赖追踪的响应式系统实现的。当一个组件首次渲染时Vue 会追踪在渲染过程中使用的每一个 ref。然后当一个 ref 被修改时它会触发追踪它的组件的一次重新渲染。 在标准的 JavaScript 中检测普通变量的访问或修改是行不通的。然而我们可以通过 getter 和 setter 方法来拦截对象属性的 get 和 set 操作。 该 .value 属性给予了 Vue 一个机会来检测 ref 何时被访问或修改。在其内部Vue 在它的 getter 中执行追踪在它的 setter 中执行触发。 另一个 ref 的好处是与普通变量不同你可以将 ref 传递给函数同时保留对最新值和响应式连接的访问。当将复杂的逻辑重构为可重用的代码时这将非常有用。 当你修改了响应式状态时DOM 会被自动更新。但是需要注意的是DOM 更新不是同步的。Vue 会在“next tick”更新周期中缓冲所有状态的修改以确保不管你进行了多少次状态修改每个组件都只会被更新一次。 reactive() 将使对象本身具有响应性响应式对象是 JavaScript 代理其行为就和普通对象一样。不同的是Vue 能够拦截对响应式对象所有属性的访问和修改以便进行依赖追踪和触发更新。值得注意的是reactive() 返回的是一个原始对象的 Proxy它和原始对象是不相等的。只有代理对象是响应式的更改原始对象不会触发更新。 2.vue3的ref及reactive的使用 ①示例 templatediv idcount1count值: {{ count }}/divdivdiv姓名{{ student.name }}/divdiv idstu1点赞数{{ student.num }}/div/divdivbutton clickbtnClick()按钮/button/div /template script setup // import {ref, reactive} from vue; const ref (target) {let _value target;return{get value() {return _value;},set value(newValue){_value newValue;document.getElementById(count1).innerHTML count值: ${newValue};}} } const reactive (target){ return new Proxy(target,{get:(obj,key) {return obj[key];},set:(obj,key,newValue) {obj[key] newValue;document.getElementById(stu1).innerHTML 点赞数${newValue};return true;} }) } const count ref(0); const student reactive({name: 小李,num: 0 })const btnClick () {count.value;student.num; } /script ②说明 上面是一个简单的模拟ref及reactive的实现的示例。 ref说明 ref可以声明任何类型的变量包含基本类型及复杂类型。ref() 接收参数并将其包裹在一个带有 .value 属性的 ref 对象中返回。 在js代码中需要通过ref对象的.value属性然后再得到具体的内容进行赋值和使用在template中可以直接使用不需要进行.value操作。 reactive说明 reactive() 返回的是一个原始对象的 Proxy只有代理对象是响应式的更改原始对象不会触发更新。使用 Vue 的响应式系统的最佳实践是 仅使用你声明对象的代理版本。 有限的值类型它只能用于对象类型 (对象、数组和如 Map、Set 这样的集合类型)。它不能持有如 string、number 或 boolean 这样的原始类型。 不能替换整个对象由于 Vue 的响应式跟踪是通过属性访问实现的因此我们必须始终保持对响应式对象的相同引用。这意味着我们不能轻易地“替换”响应式对象。 对解构操作不友好当我们将响应式对象的原始类型属性解构为本地变量时或者将该属性传递给函数时我们将丢失响应性连接。 由于这些限制我们建议使用 ref() 作为声明响应式状态的主要 API。 3.reactive响应式失效问题 1.reactive声明对象没有失效 templatediv idcount1count值: {{ count }}/divdivdiv姓名{{ student.name }}/divdiv idstu1点赞数{{ student.num }}/div/divdivbutton clickbtnClick()按钮/button/div /template script setup import { ref, reactive } from vue; const count ref(0); let student reactive({name: 小李,num: 0 })const btnClick () {count.value;student reactive({name: 小孙,num: 1}) } /script 点击按钮前 点击按钮后 可以看到值已经发生变化。 2.reactive声明数组响应式失效。 template div{{ list }} /div divbutton clickbtnClick()按钮/button /div/templatescript setupimport {reactive} from vue;let list reactive([123,234,345 ]) const btnClick () {list [258,369,147];console.log(list); } /script 按钮点击前 按钮点击后 点击按钮后list的值如控制台已经发生了变化但是视图已经渲染但是内容没有更新。此种方式不会触发视图更新因为地址指向变成了一个新的地址。 解决方法 ①使用ref进行定义。将对象的.value设定为新的数组。 ②将数组用对象的方式进行包裹给对象中的属性进行赋值在template中使用对象中的属性进行显示。如下 template div{{ list.arr }} /div divbutton clickbtnClick()按钮/button /div/templatescript setupimport {ref,reactive} from vue;let list reactive({arr:[123,234,345 ] }) const btnClick () {list.arr [258,369,147];console.log(list); } /script ③采用push方式进行更新注意要使用扩展运算符否则会在数组中嵌套一个数据。 templatediv{{ list }}/divdivbutton clickbtnClick()按钮/button/div /templatescript setupimport { ref, reactive } from vue;let list reactive([123, 234, 345 ] ) const btnClick () {list.push(...[258, 369, 147]);console.log(list); } /script 在使用reactive时需要使用const方式进行定义。通过const定义只能修改对象中属性而不能修改整个对象。 4.总结 关于ref及reactive的用法还是要在开发中多多使用遇到响应式失效问题仔细研究加强理解。

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

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

相关文章

seo站内优化公司免费制作微信网页网站

真机调试现在发生了改变,在Xcode7以前进行真机调试是需要证书的,正是由于这个原因,这个过程比较麻烦;在Xcode7以后是免证书的,使用起来就简单很多了。 Xcode7以前的步骤如下: 原链接地址为:http…

中国建设银行北海招聘信息网站龙岗做网站公司

一、栈 1.1、栈的基本概念 1.1.1、栈的定义 栈(Stack):是只允许在一端进行插入或删除的线性表。首先栈是一种线性表,但限定这种线性表只能在某一端进行插入和删除操作。 栈顶(Top):线性表允许…

企业集团网站源码手机能看禁止网站的浏览器

目录 1.煤球数量; 2.生日蜡烛; 3.凑算式 4.方格填数 5.四平方和 6.交换瓶子 7.最大比例 1.煤球数量 题目解析:可以根据题目的意思,找到规律。 1 *- 1个 2 *** 3个 3 ****** 6个 4 ********** 10个 不难发现 第…

网站源码生成器水滴查企业查询

文章目录八皇后问题解决思路代码实现运行结果八皇后问题 八皇后问题,是一个古老而著名的问题,是回溯算法的典型案例。该问题是国际西洋棋棋手马克斯贝瑟尔于1848年提出:在8X8格的国际象棋上摆放八个皇后,使其不能互相攻击&#x…

南京小程序开发网站制在线做网站 自动生成手机版

这里我想首先说明一下,虽然我们经常会拿垃圾回收器来做比较,虽然想挑选一个最好的收集器出来,但是目前也没有说哪一款收集器是完美的,更不存在万能的收集器,我们也只是对收集器选择最适合场景的一个收集器。 那么作者将…

织梦中英文网站源码网站权重如何速度增加

职场口才提升之道 在职场中,口才的重要性不言而喻。无论是与同事沟通协作,还是向上级汇报工作,亦或是与客户洽谈业务,都需要具备良好的口才能力。一个出色的职场人,除了拥有扎实的专业技能外,还应具备出色…

家政服务网站做推广有效果吗太原网站制作建设

HarmonyOS是华为自主研发的面向全场景的分布式操作系统。它的技术特点主要体现在以下几个方面: 分布式架构:HarmonyOS采用了分布式架构设计,通过组件化和小型化等方法,支持多种终端设备按需弹性部署,能够适配不同类别的…

ftp网站上传之后怎么办邵东微网站建设

一、背景知识 前面由于定轨的大作业,关于Astrogator模块的学习有所滞后,在本节将重新聚焦Astrogator模块,在本节中,首先解决的问题是已知两个卫星的轨道六根数,求解其中某一颗卫星LVLH坐标下另一颗卫星的位置速度。这…

钓鱼网站教程010-58813333 可信网站

为什么80%的码农都做不了架构师?>>> 马年春节即将来临,在过去的一年,U-Mail邮件服务器从用户需求出发,围绕着为用户打造稳定、安全、高效、易操作、助管理的邮件系统目标,三军用命,取得了不俗业…

企业官方网站怎么写中国外贸人才网官网

栈 一、栈的定义 栈是(stack)是限定尽在表尾进行插入和删除操作的线性表。 栈又称为后进先出(Last In First Out)的线性表,简称LIFO结构。 二、进栈出栈变化形式 注意: 并不是最新进栈的元素只能最后处栈。如,我们…

企业电子商务网站的建设阶段美篇制作app下载安装免费

3.2、当前项目规划 完成项目最基本的用户权限管理,即添加用户,添加角色,用户登录后根据权限的不同获取不同的菜单。转载于:https://www.cnblogs.com/seem111111/p/10945125.html

网站怎么做图片搜索网站开发怎么做才有利于seo

文章目录 什么是线程什么是进程进程的组成什么是pcb 进程概括线程线程与进程的关系线程的特点 创建线程创建线程方法创建线程的第二种方法对比 其他的方式匿名内部类创建线程匿名内部类创建Runable的子类lambda表达式创建一个线程 多线程的优势 什么是线程 什么是进程 首先想…

重庆企业网站如何推广中国做网站公司

近几期的考情来看,本章选择题稳定考4分,考案例的可能性有,需要重点学习。本章节专业知识点特别多。但是,只考课本原话,大家一定要把本章至少通读一遍,还要多刷题,巩固重点知识。 3 系统集成 3…

高端网站开发平台移动端的网站建设

某数码博主今日放出了一张华为内部关于荣耀 30 Pro 测试 HarmonyOS 的截图,图片显示该机正运行基于 HarmonyOS 2.0 开发者测试版的系统。此外,他还透露荣耀 30 系列、V30 系列、Play4 Pro 下个月将升级到华为鸿蒙系统。华为在 2019 年开发者大会上正式推…

公司招聘网站秦皇岛网站推广联系电话

点击上方蓝字,关注本公众号,获得更多资源上一篇文章介绍了四元数、欧拉角、旋转矩阵、轴角如何相互转换,本篇文章介绍如何用eigen来实现。旋转向量1,初始化旋转向量:旋转角为alpha,旋转轴为(x,y,z)Eigen::A…

如何建淘客网站乐清新闻综合频道

问题的背景: U盘(USB闪存盘)的优点主要包括: 便携性:U盘体积小、重量轻,便于携带,可以轻松地在不同设备间传输数据。高速传输:相比传统机械硬盘,U盘的读写速度更快&…

外贸seo网站搭建网站上传图片尺寸

简介LNMP是Linux、Nginx、MySQL和PHP的缩写,这个组合是最常见的WEB服务器的运行环境之一。本文将带领大家在CentOS 6操作系统上搭建一套LNMP环境。 本教程适用于CentOS 6.x版本。 在安装LNMP环境之前,您需要先对CentOS操作系统做一些初始化的工作&#x…

网站建设和网站维护是什么企业网站布局960

一.广州电商公司 1.简单自我介绍 2.介绍下之前的公司离线数仓项目 3.mysql和hive区别? 4.sql的执行顺序? 5.hive的优化 6.说下你之前公司来,你的技能层次在每个公司?你怎么评价你的技能? 7.你的之前业务主要是做什么&…

贵阳网站备案核验点照相网站设计包括什么

智慧工地解决方案依托计算机技术、物联网、云计算、大数据、人工智能、VR&AR等技术相结合,为工程项目管理提供先进技术手段,构建工地现场智能监控和控制体系,弥补传统方法在监管中的缺陷,最线实现项目对人、机、料、法、环的全…

开源系统网站奢侈品回收

死锁的产生是因为满足了四个条件: 互斥占有且等待不可强占用循环等待 这个网站收集了很多死锁场景 接下来介绍几种常见的死锁发生场景。其中,id 为主键,no(学号)为二级唯一索引,name(姓名&am…