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实例的讲解,大家如果有疑问请留言讨论,共同进步,感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!
本文向大家介绍Vue.js组件高级特性实例详解,包括了Vue.js组件高级特性实例详解的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了Vue.js组件高级特性。分享给大家供大家参考,具体如下: 1 递归 为组件设置 name 属性,这个组件就可以在自身的模板内递归调用自己。 html: js: 效果: 渲染结果: 可以利用组件的可递归特性,来实现一些具有不确定层级的组件,比如级联选择器和树
如何在Children内部拿到父级的ref? 父级是不同的组件
本文向大家介绍Vue.js之slot深度复制详解,包括了Vue.js之slot深度复制详解的使用技巧和注意事项,需要的朋友参考一下 前言 在Vue中,slot是一个很有用的特性,可以用来向组件内部插入一些内容。slot就是“插槽”的意思,用大白话说就是:定义组件的时候留几个口子,由用户来决定插入的内容。 例如我们定义一个组件MyComponent,其包含一个slot: 当调用<MyComponen
本文向大家介绍webpack+vue.js实现组件化详解,包括了webpack+vue.js实现组件化详解的使用技巧和注意事项,需要的朋友参考一下 简介 在vue中实现组件化用到了vue特有的文件格式.vue,在每一个.vue文件就是一个组件,在组件中我们将html,css,js全部写入,然后在webpack中配置vue-loader就可以了。 建立vue组件 在src目录下建立component
本文向大家介绍vue.js指令和组件详细介绍及实例,包括了vue.js指令和组件详细介绍及实例的使用技巧和注意事项,需要的朋友参考一下 大家好,本文给各位做一下vue.js一个最基本的概念介绍。 vue.js 指令 这个例子我们会得到,v-text所在的div元素的内部插入了'Hello Vue!'这段字符串,那么我们为什么会产生这样一个结果呢,我们来分析一下: 这一步的意思是,实例化的这个Vue
本文向大家介绍对Python中TKinter模块中的Label组件实例详解,包括了对Python中TKinter模块中的Label组件实例详解的使用技巧和注意事项,需要的朋友参考一下 Python2.7.4 OS—W7x86 1. 简介 Label用于在指定的窗口中显示文本和图像。最终呈现出的Label是由背景和前景叠加构成的内容。 Label组件定义函数:Label(master=None, c