当前位置: 首页 > news >正文

不到网站是为什么一起做陶瓷官方网站

不到网站是为什么,一起做陶瓷官方网站,上饶哪里培训网站建设,个人特种证件查询网站假期第四篇,对于基础的知识点,我感觉自己还是很薄弱的。 趁着假期,再去复习一遍 1、toRef与toRefs 创建一个ref对象,其value值指向另一个对象中的某个属性 语法:const name toRef(person,‘name’&#xf…

假期第四篇,对于基础的知识点,我感觉自己还是很薄弱的。
趁着假期,再去复习一遍
1、toRef与toRefs

创建一个ref对象,其value值指向另一个对象中的某个属性
语法:const name = toRef(person,‘name’)
应用:要将响应式对象中的某个属性单独提供给外部使用时
扩展:toRefs与toRef功能一致,但可以批量创建多个ref对象,语法:toRefs(person)

示例:当定义penson为响应式对象时,再定义一个变量去接收对象中的某个值,
const name1 = person.name 这种方式name1不具有响应式
const name2 = toRef(person,‘name’) 这种方式name2具有响应式

<template><div><h2>姓名:{{ person.name }}</h2><h2>性别:{{ person.sex }}</h2><h2>工作:{{ person.job.job1.work }}</h2><button @click="person.name += '~'">姓名变了</button><br /><button @click="person.sex += '!'">性别变了</button><br /><button @click="person.job.job1.work += '还有其他工作'">工作变了</button></div>
</template>
<script >
import { ref, reactive,toRef } from "vue";
export default {name: "demo",setup() {let person = reactive({name: "莲花",sex: "男",job: {job1: {work: "侦探",},},});const name1 = person.name;console.log(name1, "name1");const name2 = toRef(person,'name')console.log(name2, "name2");return {person,};},
};
</script>
<style scoped></style>

在这里插入图片描述

如果模板区想简化成这样

<template><div><h2>姓名:{{ name }}</h2><h2>性别:{{ sex }}</h2><h2>工作:{{ work }}</h2><button @click="name += '~'">姓名变了</button><br /><button @click="sex += '!'">性别变了</button><br /><button @click="work += '还有其他工作'">工作变了</button></div>
</template>
<script >

就要用到toRef

<script >
import { ref, reactive, toRef } from "vue";
export default {name: "demo",setup() {let person = reactive({name: "莲花",sex: "男",job: {job1: {work: "侦探",},},});const name1 = person.name;console.log(name1, "name1");const name2 = toRef(person, "name");console.log(name2, "name2");return {//toRef接收的第一个参数是对象,第二个是属性键name: toRef(person, "name"),sex: toRef(person, "sex"),work: toRef(person.job.job1, "work"),};},
};
</script>

ref直接使用似乎也能达到相似的效果,但是可以替换为ref写法吗?答案是不可以
在这里插入图片描述
如果替换为ref的写法,只有在初始化的时候才会读取person中定义的属性,之后修改person中的属性,改的根本不是person中定义的属性,而是return中新定义出来ref包裹的属性。

在模板区将person对象展示出来,然后点击三个按钮,看下打印出来的结果
在这里插入图片描述
三个按钮随意点击,页面已经变化了,但是person对象还是原来的
在这里插入图片描述
再换成toRef
在这里插入图片描述
person对象也一起发生了改变
在这里插入图片描述

toRef一次只能处理一个属性,toRefs可以批量处理一个对象中的所有属性
…扩展运算符只能拿到第一层,所以模板区的work,从job开始往下点,job.job1.work
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

toRef的本质是引用,保持住和源对象的连接关系,维持通话,进行一个桥接,
toRef 创建的引用是对已有对象的属性的引用。因此,在修改 toRef 返回的引用时,会直接修改原始对象中的属性。

ref的本质是拷贝,将对象中的属性读取出来,打包成一个新的ref,和原来的不再有连接关系。

ref 适用于创建可变的单个值的响应式数据,而 toRef 用于获取已有响应式对象中特定属性的引用,并关注该属性的变化。

http://www.15wanjia.com/news/196977.html

相关文章:

  • 网站运营公司哪家值得推荐山西网站建设服务公司
  • 网站建设 技术方案模板长沙做网站微联讯点不错
  • 英文网站网站设计公司企业邮箱
  • 10个网站用户体验优化的研究结果优化网站多少钱
  • 玉林网站建设免费网站重生九零做商女
  • 生活类网站内容建设中国菲律宾最新局势
  • 自己怎么做响应式网站久久建筑网免费下载
  • 长沙网站运营佛山网站域名过期
  • 怎么推广我的网站吗大型的建设工程类考试辅导网站
  • 赣州人才网赣州九一人才长沙百度seo优化电话
  • 商业网站运营成本企业宣传片背景音乐
  • 天门市电子商务网站建设小微企业名录
  • 网站建设分金手指排名八手机上干点啥能挣零花钱
  • 自己做的网站如何在百度搜到清河做网站报价
  • 福州推广企业网站wordpress自动标签
  • 网站后台出现乱码云南省建设执业注册管理中心网站
  • 北京做的比较好的网站公司吗python如何做简单的网站
  • asp网站上一篇下一篇代码佛山网站建设费用预算
  • 做二手网站赚钱不网站设计杭州
  • 免费的做微博的网站模板如何在网上推广农产品
  • 怎么用自助网站邯郸专业做网站多少钱
  • dede采集规则下载网站本地服务器 wordpress
  • 国外做的比较好的购物网站在山东和网页有关的公司
  • gta5 网站正在建设中网址如何生成二维码
  • 珠海网站建设技术支持加盟网站制作定制
  • 设计说明100字通用seo外推软件
  • 网络创始人 网站建设课程网站开发流程图及原型图
  • 网站换服务器百度不收录名词解释 网站内容
  • 电子商务网站建设与维护 试卷做网站 哪些公司
  • 官网网站建设需求文档电子商务网站建设实用教程教案