vue3.x+ts+结构响应式数据
vue
vuejs/vue: 是一个用于构建用户界面的 JavaScript 框架,具有简洁的语法和丰富的组件库,可以用于开发单页面应用程序和多页面应用程序。
项目地址:https://gitcode.com/gh_mirrors/vu/vue
免费下载资源
·
历史文章目录连接: https://blog.csdn.net/yy763496668/article/details/113117040 此链接为CSDN连接,目的为方便大家一览博客目录!内容会定期更新。 |
微信公众号:猿媛大本营 |
概述:
在接受到一些网络数的时候,数据中可能包含了大量你用不到的属性,你用到的属性只有一部分时,我们可以通过结构响应式数据来获得。 |
正文:
此案例模拟了一个复杂的对象
<template>
<p>采访受害者对象:</p>
<p>受害者姓名:{{wyf.girlFriend.name}}</p>
<p>受害者年龄:{{wyf.girlFriend.age}}</p>
<p>受害者性别:{{wyf.girlFriend.gender}}</p>
<p>来自受害者的警告:{{wyf.girlFriend.warning}}</p>
</template>
<script lang="ts">
import { ref, defineComponent, reactive } from 'vue'
export default defineComponent({
name: 'HelloWorld',
setup: () => {
const wyf = reactive({
name:'陨落巨星',
age:'31',
gender:'男',
girlFriend:{
name:'受害者',
age:16,
gender:'女',
warning:'接受法律的制裁吧!'
}
})
return {wyf}
},
})
</script>
页面显示:
从上面的页面代码来看,我们只用到wyf.girlFriend中属性,每次访问的层次都比较深,为了简化访问深度。我们需要架构响应式数据。
<template>
<p>采访受害者对象:</p>
<p>受害者姓名:{{name}}</p>
<p>受害者年龄:{{age}}</p>
<p>受害者性别:{{gender}}</p>
<p>来自受害者的警告:{{warning}}</p>
</template>
<script lang="ts">
import { defineComponent, reactive, toRefs } from 'vue'
export default defineComponent({
name: 'HelloWorld',
setup: () => {
const wyf = reactive({
name:'陨落巨星',
age:'31',
gender:'男',
girlFriend:{
name:'受害者',
age:16,
gender:'女',
warning:'接受法律的制裁吧!'
}
})
//结构响应式数据
let {name,age,gender,warning} = toRefs(wyf.girlFriend);
return {name,age,gender,warning}
},
})
</script>
toRefs将一响应式对象转化成一组ref,这些ref将保留到源对象的响应式连接。
toRef 为某个属性创建ref,参数有两个,一个是待结构的对象,一个是待结构的属性字符串。
<template>
<p>采访受害者对象:</p>
<p>受害者姓名:{{name}}</p>
<p>受害者年龄:{{age}}</p>
<p>受害者性别:{{gender}}</p>
<p>来自受害者的警告:{{warning}}</p>
</template>
<script lang="ts">
import { defineComponent, reactive, toRef } from 'vue'
export default defineComponent({
name: 'HelloWorld',
setup: () => {
const wyf = reactive({
name:'陨落巨星',
age:'31',
gender:'男',
girlFriend:{
name:'受害者',
age:16,
gender:'女',
warning:'接受法律的制裁吧!'
}
})
//通过toRefs 结构响应式数据
//const {name,age,gender,warning} = toRefs(wyf.girlFriend);
//toRef 为某个属性创建ref
const name = toRef(wyf.girlFriend,'name');
const age = toRef(wyf.girlFriend,'age');
const gender= toRef(wyf.girlFriend,'gender');
const warning = toRef(wyf.girlFriend,'warning');
return {name,age,gender,warning}
},
})
</script>
【文章导航】
https://blog.csdn.net/yy763496668/article/details/113117040
THANKS ALL !!
【关注、点赞,收藏】 关注公众号,您将第一时间收到文章更新 微信公众号:猿媛大本营 QQ群号:1056320746 |
GitHub 加速计划 / vu / vue
207.53 K
33.66 K
下载
vuejs/vue: 是一个用于构建用户界面的 JavaScript 框架,具有简洁的语法和丰富的组件库,可以用于开发单页面应用程序和多页面应用程序。
最近提交(Master分支:1 个月前 )
73486cb5
* chore: fix link broken
Signed-off-by: snoppy <michaleli@foxmail.com>
* Update packages/template-compiler/README.md [skip ci]
---------
Signed-off-by: snoppy <michaleli@foxmail.com>
Co-authored-by: Eduardo San Martin Morote <posva@users.noreply.github.com> 3 个月前
e428d891
Updated Browser Compatibility reference. The previous currently returns HTTP 404. 4 个月前
更多推荐
已为社区贡献2条内容
所有评论(0)