Vue--》混合文件使用以及ref的引用讲解
创始人
2024-02-16 11:02:56
0

目录

mixin混合

前言

ref的引用DOM

ref引用组件


mixin混合

在日常开发中,当我们开发的各种组件可能会有相同的内容,我们可以将相同的内容在各个相对应的组件内删除,然后放在同一个配置里。所谓混合两个或多个组件共享一个配置。当然这个配置文件的名字可以自定义,为了具体语义化,我将这个文件名命名mixin,当然看个人喜好。

配置混合文件 mixin.js ,为了加深了解,继续在混合文件上添加data数据以及添加原组件data数据

// mixin.js
export const mixin = {methods:{showName(){alert(this.name)}}
}
export const mixin2 = {// 混合里面的data的数据会和原组件data数据进行整合data(){return {x:10, //如果原组件data数据本身就有该数据,以原组件数据为主y:10}}
}

当然混合也不能包容所有配置项或函数,生命周期函数就是一个特例: 它不以任何为主,不管是原组件还是混合文件里面的生命周期函数,只要有都要。

当然混合我们也可以同全局组件一样写到全局配置上,这样我们在混合里面写到data数据或者是methods方法都会写到vm上,直接使用无需调用。当然这样肯定是不合理的,所以Vue官方进行解释:推荐全局mixin应该用于插件开发,不建议应用使用。

总结

mixin:混合可以把多个组件共用的配置提取成一个混入对象

使用方式

1)定义混合文件

2)使用混入文件

局部导入:mixins:['xxx']

全局导入:Vue.mixin(xxx)

PS:这里解释一下 Vue 的插件 ,所谓Vue的插件类似游戏外挂,让体验感更强一些。

功能:用于增强Vue

本质:包含install方法的一个对象,install的第一个参数是Vue,第二个以后的参数是插件使用者传递的数据。

前言

在我们没使用框架之前,通常一般使用 jquery 来帮助程序员简化操作DOM的过程,随着 Vue 的流行,在MVVM模型的影响下,程序员不需要操作DOM只需把数据维护好就行(也称:数据驱动视图),既然在 Vue 中不需要操作DOM,所以是很少在 Vue 项目中安装和使用 jquery 的。假设我们在 Vue项目中需要操作DOM怎么办?这时候就需要看看接下来讲解的内容了。

ref的引用DOM

ref用来辅助开发者在不依赖于 jQuery 的情况下,获取 DOM 元素或组件的引用。

每个 vue 的组件实例上,都包含一个 $refs 对象,里面存储着对应的DOM元素或组件的引用。默认情况下,组件的 $refs 指向一个空对象


ref引用组件

如果想要使用ref引用页面上的组件实例,则可以按照如下的方式进行操作:

组件的 $nextTick(cb) 方法,会把 cb 回调推迟到下一个 DOM 更新周期之后执行。通俗的理解是:等组件的DOM更新完成之后,再执行 cb 回调函数。从而能保证 cb 回调函数可以操作到最新 DOM 元素。


总结

ref属性:被用来给元素或者子组件注册引用信息(id的替代者),应用在html标签上获取的是真实DOM元素,应用在组件标签上是组件实例对象(vc)

使用方式

打标识:

...

或 

获取:this.$refs.xxx

相关内容

热门资讯

涉及网约车、电梯……“法规体检... 12月22日,全国人大常委会法工委关于2025年备案审查工作情况的报告提请全国人大常委会会议审议。在...
关于《河南省建筑市场管理条例(... 省人大常委会: 2025年11月11日,省人民政府向省人大常委会报送了关于提请审议《河南省建筑市场管...
法治春风化纠纷 普法护航平安路 “以前出了交通事故,跑交警、找保险、跑法院来回折腾,现在一个中心全办完,还能学到法律知识,心里踏实!...
央行发布一次性信用修复政策,步... 文|张彦宗 一些为信用记录苦恼的人,将有机会迎来一次“重生”的机遇。 央行对于那些信用受损但还款积极...
促消费向稳向好需政策加力优化 今年以来,面对复杂多变的外部形势,我国把全方位扩大内需、做大做强国内大循环摆在重要位置,各项提振消费...
关于《河南省建筑市场管理条例(... 省人大常委会: 12月2日上午,常委会本次会议分组审议了《河南省建筑市场管理条例(修订草案)》(以下...
关于《河南省烟草专卖管理条例(... 省人大常委会: 12月2日上午,常委会本次会议分组审议了《河南省烟草专卖管理条例(修订草案)》(以下...
中国南玻集团股份有限公司关于公... 本公司及董事会全体成员保证公告内容的真实、准确和完整,没有虚假记载、误导性陈述或者重大遗漏。 一、案...
关于《河南省建筑市场管理条例(... 主任、各位副主任、秘书长、各位委员: 受省人民政府委托,现将《河南省建筑市场管理条例(修订草案)》(...
督促企业尽快通过协商解决内部纠... 新华社北京12月22日电 商务部新闻发言人22日就安世半导体问题答记者问时说,中国政府本着对全球半导...