vue3 composition(组合式)API 之 setup 入口函数,web应用系统开发

本文介绍了Vue组件中的props和context的用法,强调了setup函数如何处理接收到的props并区分响应式与非响应式数据。通过实例展示了如何在父子组件间传递数据和使用非响应式属性。同时还提到了前端开发的学习资源和面试题文档.

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

// 模板

// 配置对象

函数参数


对于 setup 函数来说,它接收两个参数,分别为:

  • props

  • context

props

通过 prop 传递过来的所有数据,我们都可以在这里进行接收。并且获取到的数据将保持响应性

我们看下面的代码:

父组件:

// 模板

// 配置对象

子组件:

const componentB = {

props: {

title: {

type: String,

required: true

}

},

setup(props) {

console.log(props); // Proxy {title: “父组件传递过来的 title”}

console.log(props.title); // “父组件传递过来的 title”

},

template: `

{{title}}

`

}

context

context 是一个 JavaScript 对象,这个对象暴露了三个组件的属性,我们可以通过 解构 的方式来分别获取这三个属性

// setup(props, context) {

setup(props, { attrs, slots, emit }) {

// Attribute (非响应式对象) 非 props 数据

console.log(attrs)

// 插槽 (非响应式对象)

console.log(slots);

// 触发事件 (方法) === this.$emit

console.log(emit);

}

attrs: 它是绑定到组件中的 非 props 数据,并且是非响应式的。

slots: 是组件的插槽,同样也不是 响应式的。

emit: 是一个方法,相当于 vue2 中的 this.$emit 方法。

然后我们通过下面的代码,来看一下这三个属性的实际使用:

// 父组件

<component-b title=“父组件传递过来的 title” desc=“父组件传递过来的普通属性” @update=“onUpdate”>

普通的匿名插槽

// 子组件

const componentB = {

props: {

title: {
自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。

深知大多数前端工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!

因此收集整理了一份《2024年Web前端开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。

img

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上前端开发知识点,真正体系化!

由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!

如果你觉得这些内容对你有帮助,可以扫码获取!!(备注:前端)

最后

前15.PNG

前16.PNG

由于文档内容过多,为了避免影响到大家的阅读体验,在此只以截图展示部分内容,详细完整版的JavaScript面试题文档,或更多前端资料可以点此处免费获取

新!**

如果你觉得这些内容对你有帮助,可以扫码获取!!(备注:前端)

最后

[外链图片转存中…(img-naYNSe5O-1712218761208)]

[外链图片转存中…(img-J8csKJSN-1712218761208)]

由于文档内容过多,为了避免影响到大家的阅读体验,在此只以截图展示部分内容,详细完整版的JavaScript面试题文档,或更多前端资料可以点此处免费获取

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值