Vue.js-----轻量高效的MVVM框架(十一、使用slot分发内容)
#单个slot
html:
<h3>#单个slot</h3>
<!-- 定义child01模板 -->
<template id="child01">
<div>this is temp01 component!</div>
<slot>
如果没有分发内容,这里将会被显示
</slot>
</template>
<div id="dr01">
<child01></child01>
<br /><br />
<child01>
<div>这里有新的内容01</div>
<div>这里有新的内容02</div>
</child01>
</div>
js:
//*********************************************************
//单个slot
var child01 = Vue.extend({
template: "#child01",
});
var dr01 = new Vue({
el: "#dr01",
components: {
"child01": child01
}
});
结果展示:

#具名Slot(有名称的slot)
html:
<h3>#具名Slot(有名称的slot)</h3>
<!-- 定义模板child02 -->
<template id="child02">
<slot name="s1"></slot>
<slot></slot>
<slot name="s2"></slot>
</template>
<div id="dr02">
<child02>
<div slot="s1">this is slot01</div>
<div slot="s2">this is slot02</div>
<div>this is a simple div01</div>
<div>this is a simple div02</div>
</child02>
</div>
js:
//*********************************************************
//具名slot
var child02 = Vue.extend({
template: "#child02"
});
var dr02 = new Vue({
el: "#dr02",
components: {
"child02": child02
}
});
结果展示:

#编译作用域
html:
<h3>编译作用域</h3>
<template id="child03">
<div>the two items following is child msg:</div>
<div>{{cmsg_01}}</div>
<div>{{cmsg_02}}</div>
<br />
<div>the three items following is parent msg:</div>
<slot name="s1"></slot>
<slot></slot>
<slot name="s2"></slot>
</template>
<div id="dr03">
<child03>
<div slot="s1">{{msg01}}</div>
<div slot="s2">{{msg02}}</div>
<div>{{msg03}}</div>
</child03>
</div>
js:
//*********************************************************
//编译作用域
var child03 = Vue.extend({
data: function() {
return {
cmsg_01: "this is child msg_01",
cmsg_02: "this is child msg_02",
}
},
template: "#child03",
})
var dr03 = new Vue({
el: "#dr03",
data: {
msg01: "this is parent msg01",
msg02: "this is parent msg02",
msg03: "this is parent msg03",
},
components: {
"child03": child03
}
});
结果展示:

Vue.js-----轻量高效的MVVM框架(十一、使用slot分发内容)的更多相关文章
- Vue.js-----轻量高效的MVVM框架(一、初识Vue.js)
1.什么是Vue.js? 众所周知,最近几年前端发展非常的迅猛,除各种框架如:backbone.angular.reactjs外,还有模块化开发思想的实现库:sea.js .require.js .w ...
- Vue.js-----轻量高效的MVVM框架(二、Vue.js的简单入门)
1.hello vue.js! (1)引入vue.js <script type="text/javascript" src="js/vue.js"> ...
- Vue.js-----轻量高效的MVVM框架(九、组件利用Props传递数据)
#使用props传递数据 html:传递普通的字符串 <h3>#使用props传递数据</h3> <div id="dr01"> <div ...
- Vue.js-----轻量高效的MVVM框架(七、表单控件绑定)
话不多说,先上完整代码: <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> ...
- Vue.js-----轻量高效的MVVM框架(八、使用组件)
什么是组件? 组件(Component)是 Vue.js 最强大的功能之一.组件可以扩展 HTML 元素,封装可重用的代码.在较高层面上,组件是自定义元素,Vue.js 的编译器为它添加特殊功能.在有 ...
- Vue.js-----轻量高效的MVVM框架(六、Class与Style绑定)
这个相对来说简单,看一遍代码就懂. 一.完整片段: <!DOCTYPE html> <html> <head> <meta charset="UTF ...
- Vue.js-----轻量高效的MVVM框架(五、计算属性)
#基础例子 <div id="dr01"> <h4>#基础例子</h4> <div> num01={{num01}}, num02= ...
- Vue.js-----轻量高效的MVVM框架(四、指令)
Vue指令 指令 (Directives) 是特殊的带有前缀 v- 的特性.指令的值限定为绑定表达式,因此上面提到的 JavaScript 表达式及过滤器规则在这里也适用.指令的职责就是当其表达式的值 ...
- Vue.js-----轻量高效的MVVM框架(三、认识数据绑定)
插值 1.文本插值 (1)双向数据绑定 v-model="msg0101",一旦v-model中的数值发生变化,所有用vue表达式{{msg0101}}的数据都会更新. (2)单次 ...
随机推荐
- Mat类的输出格式
从前面的例程中, 可以看到 Mat 类重载了<<操作符, 可以方便得使用流操作来输出矩阵的内容.默认情况下输出的格式是类似 Matlab 中矩阵的输出格式.除了默认格式,Mat 也支持其他 ...
- 优先队列详解priority_queue .RP
) 删除.在最小优先队列(min priorityq u e u e)中,查找操作用来搜索优先权最小的元素,删除操作用来删除该元素;对于最大优先队列(max priority queue),查找操作用 ...
- js/jq基础(日常整理记录)-4-一个简单的自定义tree插件
一.一个简单的自定义tree插件 上一篇是之前自定义的table插件,这一篇也是之前同期尝试做的一个tree插件. 话不多说,先看看长什么样子哈! 现在来看确实不好看,以后在优化吧! 数据源:ajax ...
- Binder学习笔记(九)—— 服务端如何响应Test()请求 ?
从服务端代码出发,TestServer.cpp int main() { sp < ProcessState > proc(ProcessState::self()); sp < I ...
- 「BZOJ 1791」「IOI 2008」Island「基环树」
题意 求基环树森林所有基环树的直径之和 题解 考虑的一个基环树的直径,只会有两种情况,第一种是某个环上结点子树的直径,第二种是从两个环上结点子树内的最深路径,加上环上这两个结点之间的较长路径. 那就找 ...
- Percona Toolkit安装、使用
percona-toolkit是一组高级命令行工具的集合,用来执行各种通过手工执行非常复杂和麻烦的mysql和系统任务,这些任务包括: l 检查master和slave数据的一致性 l 有效地对记 ...
- LinkExtractor 构造器各参数说明
LinkExtractor 构造器各参数说明 特例: LinkExtractor构造器的所有参数都有默认值 各参数说明: allow 接收一个正则表达式或一个正则表达式列表,提取绝对url与正则表达式 ...
- Kubernetes 集群部署(1) -- 自签 TLS 证书
集群功能各模块功能描述: Master节点:主要由四个模块组成,APIServer,schedule, controller-manager, etcd APIServer: APIServer负责对 ...
- Linux的重要子目录
1: 网卡的配置文件 [ :0C::::BD #MAC地址 TYPE=Ethernet #以太网 UUID=e982e20a-e7ef--8e44-a7c0c474c708 #Linux系统内部的标 ...
- 解释器模式Interpreter详解
原文链接:https://www.cnblogs.com/java-my-life/archive/2012/06/19/2552617.html 在阎宏博士的<JAVA与模式>一书中开头 ...