【随手笔记】ComponentPublicInstance和ComponentInternalInstance

What

ComponentPublicInstance :向用户暴露的组件实例的引用类型,即script中定义的export default对象,包含datapropsmethodscomputed等。
ComponentInternalInstance :Vue内部使用的组件实例类型,包括组件的响应式状态 响应式依赖追踪虚拟DOM渲染等内部信息。

使用时机

ComponentPublicInstance :编写Vue组件或使用Vue组件。
ComponentInternalInstance :Vue内部使用场景:
	1. 自定义指令;
	2. 声明周期钩子;
	3. 渲染函数等;

使用角色

ComponentPublicInstance :开发者。
ComponentInternalInstance :Vue内部

How to get

在vue3中,通过getCurrentInstance来获取当前组件ComponentInternalInstance。

Extend

Component、Instance、Element联系和区别

它们是React的核心概念
Component(组件):界面可以拆分为一个个可以复用的模块,每一个模块就是一个组件,应用由若干个组件构成,一个复杂组件由多个简单组件构成。React通常用function或class创建组件。
Instance(实例):只有用Class定义的组件才有实例的概念,类组件实例化后的对象,储存本地状态和响应生命周期
Element(元素):应用中的最小构建单元,是一个普通对象,描述DOM节点或另一个组件,元素包含了组件的类型、属性以及子元素

联系

  • 组件通过返回一个元素树来描述用户界面的一部分,这个元素树由多个元素构成
  • 实例是类组件的具体实现,元素可以看作是组件或实例在屏幕上的表示,实例通过渲染方法生成元素,最终在屏幕上显示为元素
  • 它们扮演着不同的角色,共同构成了React应用的基石,使得开发者能够构建复杂且交互性强的用户界面。

不同点

  • 组件可以是类或函数,但是元素只是一个描述DOM节点或另一个组件的数据结构
  • 实例是类组件的一部分,存储状态和响应生命周期,而元素或组件不直接涉及状态管理或生命周期响应
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值