Vue.js中组件中的slot实例详解
Vue组件中的slot
slot 可以实现在已经定义的组件中添加内容,组件会接收内容并输出,假如有一个组件person,它的里面包含的是个人信息,如下面这样
<template id="per"> <div> <p>姓名:...</p> <p>年龄:...</p> <p>职业:...</p> </div> </template>
在应用的时候,当然希望这里面可以是灵活变化的,所以这就需要用到slot了
首先要做的事情就是创建这样一个组件,这里我采用的是<template>的形式,如下面这样
<template id="per"> <div> <p>姓名:</p> <p>年龄:</p> <p>职业:</p> </div> </template>
可以看到我这里给template添加了id,这个是为了后面的操作
下面使用Vue的构造器,创建Vue实例,然后添加局部的组件,如下面这样
var person = { template : "#per" //利用id }; new Vue({ el: "#app", data: { componentData: { name : "vam", age : 18, job : "student" } }, components : { "person" : person } });
接下来就是要在<person> 组件使用的时候添加点东西,就是具体内容,下面这样:
<div id="app"> <person> <span slot="name">{{componentData.name}}</span> <span slot="age">{{componentData.age}}</span> <span slot="job">{{componentData.job}}</span> </person> </div>
当然这样还是不够的,总得在模板中有点什么吧,如下,这里就该用到slot了
<template id="per"> <div> <p>姓名:<slot name="name"></slot></p> <p>年龄:<slot name="age"></slot></p> <p>职业:<slot name="job"></slot></p> </div> </template>
之后就可以看到想要的结果了
以上就是Vue.js中组件中的slot实例的讲解,大家如果有疑问请留言讨论,共同进步,感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!
相关文章
Vue2+SpringBoot实现数据导出到csv文件并下载的使用示例
本文主要介绍了Vue2+SpringBoot实现数据导出到csv文件并下载,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧2023-10-10vue3+ts项目之安装eslint、prettier和sass的详细过程
这篇文章主要介绍了vue3+ts项目02-安装eslint、prettier和sass的详细过程,在本文讲解中需要注意执行yarn format会自动格式化css、js、html、json还有markdown代码,需要的朋友可以参考下2023-10-10
最新评论