#单个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分发内容)的更多相关文章

  1. Vue.js-----轻量高效的MVVM框架(一、初识Vue.js)

    1.什么是Vue.js? 众所周知,最近几年前端发展非常的迅猛,除各种框架如:backbone.angular.reactjs外,还有模块化开发思想的实现库:sea.js .require.js .w ...

  2. Vue.js-----轻量高效的MVVM框架(二、Vue.js的简单入门)

    1.hello vue.js! (1)引入vue.js <script type="text/javascript" src="js/vue.js"> ...

  3. Vue.js-----轻量高效的MVVM框架(九、组件利用Props传递数据)

    #使用props传递数据 html:传递普通的字符串 <h3>#使用props传递数据</h3> <div id="dr01"> <div ...

  4. Vue.js-----轻量高效的MVVM框架(七、表单控件绑定)

    话不多说,先上完整代码: <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> ...

  5. Vue.js-----轻量高效的MVVM框架(八、使用组件)

    什么是组件? 组件(Component)是 Vue.js 最强大的功能之一.组件可以扩展 HTML 元素,封装可重用的代码.在较高层面上,组件是自定义元素,Vue.js 的编译器为它添加特殊功能.在有 ...

  6. Vue.js-----轻量高效的MVVM框架(六、Class与Style绑定)

    这个相对来说简单,看一遍代码就懂. 一.完整片段: <!DOCTYPE html> <html> <head> <meta charset="UTF ...

  7. Vue.js-----轻量高效的MVVM框架(五、计算属性)

    #基础例子 <div id="dr01"> <h4>#基础例子</h4> <div> num01={{num01}}, num02= ...

  8. Vue.js-----轻量高效的MVVM框架(四、指令)

    Vue指令 指令 (Directives) 是特殊的带有前缀 v- 的特性.指令的值限定为绑定表达式,因此上面提到的 JavaScript 表达式及过滤器规则在这里也适用.指令的职责就是当其表达式的值 ...

  9. Vue.js-----轻量高效的MVVM框架(三、认识数据绑定)

    插值 1.文本插值 (1)双向数据绑定 v-model="msg0101",一旦v-model中的数值发生变化,所有用vue表达式{{msg0101}}的数据都会更新. (2)单次 ...

随机推荐

  1. OpenCV Mat数据类型指针ptr的使用

    OpenCV Mat数据类型指针ptr的使用 cv::Mat image = cv::Mat(400, 600, CV_8UC1); //宽400,长600 uchar * data00 = imag ...

  2. 使用 Bulma

    一.起因 最近我在学习 SASS,通过它,可以将 CSS 像编程语言一样书写. 在最近之前,我又学习了 Flex 布局,用起来很方便. 所以,我学习了 Bulma 这个纯 CSS 框架--使用 Fle ...

  3. DingTalk机器人C#代码

    前面已经介绍了机器人的事情,今天直接贴一下代码. using System; using System.Collections.Generic; using System.ComponentModel ...

  4. hustOJ SPJ(special judge)模板

    #include <stdio.h> #include <math.h> #define PI acos(-1.0) #define AC 0 #define WA 1 int ...

  5. 读取url接口数据

    string url = "http://localhost:8180/city-smscenter/smscenter?cmd=flowsms.queryMobileSmsList& ...

  6. C#之Socket断线重连

    一.网上常用方法 1.当Socket.Conneted == false时,调用如下函数进行判断 /// /// 当socket.connected为false时,进一步确定下当前连接状态 /// / ...

  7. C#非泛型集合和泛型集合

    第一  : ArrayList(非泛型集合)  与List(泛型集合) ArrayList 是数组的复杂版本.ArrayList 类提供在大多数 Collections 类中提供但不在 Array(数 ...

  8. Glib学习笔记(一)

    你将学到什么 如何使用GObject实现一个新类 类头文件 声明一个类型的方法选择取决于类型是可被继承的还是不可被继承的. 不可被继承的类型(Final类型)使用G_DECLARE_FINAL_TYP ...

  9. 使用pycharm创建自己的第一个django项目

    PyCharm是一种Python IDE,带有一整套可以帮助用户在使用Python语言开发时提高其效率的工具,比如调试.语法高亮.Project管理.代码跳转.智能提示.自动完成.单元测试.版本控制. ...

  10. 咕咕(数位dp+AC自动机)

    咕咕(数位dp+AC自动机) 若一个字符串的字符集合是0~m-1,那么称它为m进制字符串.给出n个m进制字符串\(s_i\),每个字符串的权值为\(v_i\).对于另一个m进制字符串\(S\),设\( ...