前言
在用vue开发实际项目中,我们都是模块化开发,例如一个弹出框,不可能用到的时候,在页面里找吧找吧上个,再粘贴(ps:如果还有这样做的友友们,赶紧改了吧0.0)......所以我们需要组件化开发,简单的组件我们都会开发,但是怎么才能封装一个耐用白搭的组件呢?那就少不了今天所介绍的主题------插槽;
什么是插槽?
emm....我个人不喜欢讲概念,所以我用我理解的大白话来跟大家说;我理解的:在组件开发中,插槽就是在组件的template模板中,我们有一段代码比较灵活(这段代码就是个变量),我们需要改变这个"变量",所以使用slot来搞这个"变量"。
使用demo
话不多说,下面简单给大家列举俩我在实际项目中开发的实例吧
demo1:
场景:
如图所示,就是鼠标在点点点上会弹出来个泡泡框,但泡泡框里的item,在每个地方都不太一样,所以 我就考虑插槽了~
组件中的代码:
这是我基于element-ui,二次封住的一个小组件,名字就叫more-opera-box,重点就是这个
ini
<slot name="box_content"></slot>
这个就是我上面说的那个"变量"
在其他界面使用:
简单的引用组件,就不说了,这个样子使用,在more-opera-box中,多加template 代码段,该代码片段就是这个"变量"的具体值;tips:添加#刚刚自己slot中的name的名字哦~
demo2
场景:
如图,这次我们是一个弹出框,只有头头不太一样,其余地方都一样,就像上面所说的,这次的"变量"就是这个头头啦~
组件中的代码:
在其他界面使用:
效果:
Ending
了解完这俩demo,相信大家都对这个"变量"(插槽)有了简单的理解了吧~ 希望对友友们下来的开发有帮助哟~