具体slot用法详见http://www.cnblogs.com/keepfool/p/5637834.html

html:

<!--测试弹窗-->
<dialog-test v-if="testShow==1">
<div class="header-box" slot="header">
<h2>提示信息</h2>
</div>
<div class="body-box" slot="body">
<p>我是一个对话框</p>
<textarea class="test-content"></textarea>
</div>
</dialog-test>
<dialog-test v-else-if="testShow==2">
<div class="header-box" slot="header">
<h2>2222222222222222</h2>
</div>
<div class="body-box" slot="body">
<p>我是一个对话我是一个对话框我是一个对话框我是一个对话框我是一个对话框框</p>
</div>
</dialog-test>

子组件中:

<script type="text/x-template" id="dialog-test-template">
<div class="dialog-wrap">
<div class="mask"></div>
<div class="dialog-is-distribute">
<slot name="header"></slot><!--父组件中slot=head的占位符-->
<slot name="body"></slot><!--父组件中slot=body的占位符-->
</div>
</div>
</script>

对比,使用子组件嵌套子组件的形式:

最外层就一个:

<transition name="fade">
<dialog-box v-if="addShow" v-on:addeval="hiddenEval()" :title="dialogTitle" :sign="dialogContent" :custwidth="dialogWidth"></dialog-box>
</transition>

而子组件为:

<script type="text/x-template" id="dialog-box-template">
<div class="dialog-wrap">
<div class="mask"></div>
<div class="dialog-is-distribute" :style="{width:custwidth}">
<div class="title"><b :class="showIcon"></b>{{title}}<i class="close" v-on:click="closedialog()"></i></div>
<dialog-add v-on:closedialog="closedialog" v-if="sign=='add'"></dialog-add>
<dialog-print v-on:closedialog="closedialog" v-else-if="sign=='print'"></dialog-print>
<dialog-addtab v-on:closedialog="closedialog" v-else-if="sign=='addtab'"></dialog-addtab>
<dialog-delete v-on:closedialog="closedialog" v-else-if="sign=='delete'"></dialog-delete>
</div>
</div>
</script>

然后每一个

dialog-add
dialog-print
dialog-addtab等等都是一个子组件;

使用slot编写弹窗组件的更多相关文章

  1. iOS应用日志:开始编写日志组件与异常日志

    应用日志(一):开始编写日志组件 对于那些做后端开发的工程师来说,看 LOG解Bug应该是理所当然的事,但我接触到的移动应用开发的工程师里面,很多人并没有这个意识,查Bug时总是一遍一遍的试图重现,试 ...

  2. Vue列表组件与弹窗组件示例

    列表组件 <!DOCTYPE html> <html> <head> <meta charset="utf-8" /> <me ...

  3. 微信小程序弹窗组件

    概述 自己封装的一个比较简单微信弹窗小组件,主要就是教会大家对微信小组件的用法和理解,因为微信小程序对组件介绍特别少,所以我就把自己的理解分享给大家 详细 代码下载:http://www.demoda ...

  4. vue+element table的弹窗组件

    在处理表格编辑相关的需求,是需要做一个弹框进行保存的:或者查看表格数据的详细信息时,也是需要做弹窗: 当然 ,这是类似于这样的 ,当然 element 已经帮我们做好 弹窗这一块 主要 我想记录的是 ...

  5. 封装Vue Element的dialog弹窗组件

    我本没有想着说要封装一个弹窗组件,但有同行的朋友在问我,而且弹窗组件也确实在项目开发中用的比较多.思前想后,又本着样式统一且修改起来方便的原则,还是再为大家分享一个我所封装的弹窗组件吧. 其实,并不是 ...

  6. vue3系列:vue3.0自定义全局弹层V3Layer|vue3.x pc桌面端弹窗组件

    基于Vue3.0开发PC桌面端自定义对话框组件V3Layer. 前两天有分享一个vue3.0移动端弹出层组件,今天分享的是最新开发的vue3.0版pc端弹窗组件. V3Layer 一款使用vue3.0 ...

  7. 手把手教你撸个vue2.0弹窗组件

    手把手教你撸个vue2.0弹窗组件 在开始之前需要了解一下开发vue插件的前置知识,推荐先看一下vue官网的插件介绍 预览地址 http://haogewudi.me/kiko/inde... 源码地 ...

  8. Jquery弹窗组件

    下面是写的简单的Jquery弹窗组件 暂不支持animate,只能满足一般的弹窗显示隐藏需求,更多功能后续会完善!网上及jquery组件很多这样的弹窗,但是用别人的感觉心里过不去,所以就随便写写,当做 ...

  9. 百度智能小程序弹窗组件wcPop|智能小程序自定义model弹窗模板

    百度智能小程序自定义弹窗组件wcPop|百度小程序model对话框|智能小程序弹窗界面模板 最近百度也推出了自己的智能小程序,如是就赶紧去试了下,官方提供的api还不是狠完整.而且官方提供的弹窗组件也 ...

随机推荐

  1. SVN提交文件失败:系统找不到指定路径

    完成程序代码工作后,进行SVN的文件提交.先进行项目的更新,然后在修改的文件上进行提交操作,发现SVN弹出提示信息,“系统找不到指定路径”提交失败,如下图:                       ...

  2. Phalcon框架数据库读写分离的实现方法

    Phalcon框架和Yaf类似,是一款用C实现的拓展级别的框架,不过其功能实现更加丰富,设计思路基于依赖注入.容器等方式,更符合现代框架思想.本文主要针对Phalcon框架数据库层的读写分离进行说明, ...

  3. linux使用flock文件锁

    使用linux flock 文件锁实现任务锁定,解决冲突 格式: flock [-sxun][-w #] fd# flock [-sxon][-w #] file [-c] command flock ...

  4. 20170617xlVBA调查问卷基础数据分类计数

    Public Sub GatherDataPicker() Application.ScreenUpdating = False Application.DisplayAlerts = False A ...

  5. Confluence 6 配置用户目录

    一个用户目录是你存储你的用户和用户组信息的地方.用户信息包括有用户的全名,用户名,密码和电子邮件地址以及其他的一些个人信息. 用户组包括有用户组名字,属于这个用户组的用户和有可能属于这个用户组的另一个 ...

  6. HDOJ1004

    #include<iostream> #include "cstring" using namespace std; int add(char s1[],char s2 ...

  7. POJ 1442 treap

    裸treap. 只需增加一个size记录其儿子个数便可找到第k大数. #include <cstdio> #include <cstring> #include <cti ...

  8. 62. 63. Unique Paths 64. Minimum Path Sum

    1. A robot is located at the top-left corner of a m x n grid (marked 'Start' in the diagram below). ...

  9. consumer的DubboResponseTimeoutScanTimer线程

    考虑这样一种情况,由于网络延时,consumer先抛出超时异常,一段时间后又收到了已经超时的响应,dubbo是怎么处理的? 拆分为3步看: 1. consumer的DubboResponseTimeo ...

  10. learning scala 变量

    scala 变量: val : 声明时,必须被初始化,不能再重新赋值. scala> test = "only1"<console>:11: error: not ...