vue弹出框的封装
依旧是百度不到自己想要的,就自己动手丰衣足食
弹出框做成单独的组件confirm.vue;
<template>
<transition name="mask-bg-fade">
<div class="mask" v-show="show">
<div class="mask_bg"></div>
<transition name="slide-fade">
<div class="modelBox" v-show="show">
<div class="tipIcon" v-bind:class="confirmModalOptions.type||'warning'"></div>
<div class="closeModel" v-on:click="closeModel()"></div>
<div class="title">{{confirmModalOptions.title || "提示"}}</div>
<div class="message textCenter">{{confirmModalOptions.message || " "}}</div>
<div class="model_btnBox">
<button class="dh_button_default2" v-on:click="confirmCancel()">
{{confirmModalOptions.btnCancelText || "取消"}}
</button>
<button class="dh_button_blue" v-on:click="confirmSubmit()">
{{confirmModalOptions.btnSubmitText || "确定"}}
</button>
</div>
</div>
</transition>
</div>
</transition>
</template>
<script>
export default {
props: ["confirmModalOptions"],
data() {
return {
show: false, // 是否显示模态框
}
},
methods: {
closeModel: function () {
this.show = false;
},
showModel: function () {
this.show = true;
},
confirmCancel: function () {
this.show = false;
if(typeof (this.confirmModalOptions.btnCancelFunction)==='function'){
this.confirmModalOptions.btnCancelFunction()
}
},
confirmSubmit: function () {
this.show = false;
if(typeof (this.confirmModalOptions.btnSubmitFunction)==='function'){
this.confirmModalOptions.btnSubmitFunction()
}
}
}
}
</script>
页面
<d-confirm v-bind:confirmModalOptions="confirmOptions" ref="myConfirm"></d-confirm>
import DConfirm from 'components/confirm';
components: { DPromise,},
del: function () {
this.$refs.myConfirm.showModel();
this.confirmOptions= {
type: "warning",//warning
title: "提示",//提示
message: "文字内容",//""
btnCancelText: "取消",//取消
btnSubmitText: "确定",//确定
btnSubmitFunction: function () {
alert("确定")
},
btnCancelFunction: function () {
alert("取消")
}
}
},
添加了两个过度效果,背景和弹出框是分开的不同效果,自己可以再封装成一个甚至多个按钮的弹出框,自己就是遇到一些比较麻烦的问题,希望大神指导学习学习,
至于css样式就大家自己写吧;
欢迎批评指正
vue弹出框的封装的更多相关文章
- vue封装公用弹出框方法,实现点击出现操作弹出框
vue封装公用弹出框方法,实现点击出现操作弹出框 如上图所示,这次要实现一个点击出现操作弹框的效果:并将这个功能封装成一个函数,便于在项目的多个地方使用. 具体思路是: 封装一个组件,组件保护一个插槽 ...
- [ vue ] Quasar封装q-dialog组件,在外层实现弹出框的开启和关闭
场景描述: 见:https://www.cnblogs.com/remly/p/12981582.html 具体实现: <!-- 父组件 --> <template> < ...
- JS弹出框插件zDialog再次封装
zDialog插件网址:http://www.jq22.com/jquery-info2426 再次封装zDialog的代码: (function ($) { $.extend({ iDialog: ...
- Android 学习笔记之AndBase框架学习(二) 使用封装好的进度框,Toast框,弹出框,确认框...
PS:渐渐明白,在实验室呆三年都不如在企业呆一年... 学习内容: 1.使用AbActivity内部封装的方法实现进度框,Toast框,弹出框,确认框... AndBase中AbActivity封 ...
- 弹出框layer的使用封装
layer弹出框官方网址:http://layer.layui.com/ layer常用方法的封装:layerTool.jsp layer.config({ extend: 'extend/layer ...
- 原生Js封装的弹出框-弹出窗口-页面居中-多状态可选
原生Js封装的弹出框-弹出窗口-页面居中-多状态可选 实现了一下功能: 1.title可自定义 可拖拽 2.width height可以自定义 3.背景遮罩和透明度可以自定义 4.可以自己编辑弹出 ...
- 关于隐式创建vue实例实现简化弹出框组件显示步骤
我们在使用vue写alert组件的时候,经常是定义了一个alert.vue,然后引入alert.vue,然后配置参数等等,非常繁琐,那有没有一种方式可以像window.alert("内容&q ...
- elementUI vue 页面加载的时候页面出现了黑字 页面优化处理 按钮弹出框文字
elementUI 页面如果需要加载很多东西的时候, 自己定义的按钮或者弹出框dialog的文字就会显示在页面上, 一闪而过, 因此需要优化一下, elementUI 提供的loading有遮罩层, ...
- javascript基于对象的弹出框封装
先睹为快,移动端:戳这里,打开页面后点击投票查看效果.PC端测试直接切换body的overflow属性:hidden和auto一样可以,比下面相对简化,又有人说这样偶尔不行..如果你知道优缺点欢迎给出 ...
随机推荐
- Oracle 通过字段名查询其所在的表
select owner , table_name , column_name from dba_tab_columns where column_name='LOG_TYPE' ;
- CUBA 7 新特性(上篇)
三年前,我们宣布了 CUBA 框架的第二个公开的主版本.CUBA 6 是改变游戏规则的版本 - 框架的许可从私有化变成了公开的 Apache2.0.那些日子里,我们甚至猜不到这个变化会最终将框架带向何 ...
- 笔记:css3伪选择器改变滚动条样式
现在我打开支持前缀-webkit-的浏览器,也就是说只要支持前缀为-webkit-的浏览器才有效果 <!doctype html> <html lang="en" ...
- Ionic3 UI组件之 ImagePicker
ImagePicker插件实现设备上的多个图像选择的功能. 组件特性: 统一选择界面,避免不同设备选择界面不一样的问题: 支持多选,并且可以设置最多选择的张数: 选择数量超出设置时会提示: Camer ...
- js加载事件和js函数定义
一 dom文档树加载完之后执行一个函数 在Dom加载完成后执行函数,下面这三个的作用是一样的,window.onload 是JavaScript的,window.onload是在dom文档树加载完和 ...
- IDEA中Maven切换国内源
国内访问Maven仓库非常慢,笔者今天忘记切换国内源更新Maven仓库竟然更新了一下午.如果改成国内的源,那么很快就更新完成了. 在IDEA中打开“Settings”(快捷键++): 在搜索框中输入“ ...
- FUzhou 1607 Greedy division---因子个数问题。
Problem 1607 Greedy division http://acm.fzu.edu.cn/problem.php?pid=1607 Accept: 402 Submit: 1463T ...
- IntelliJ IDEA创建spring-boot项目
开发环境: jdk版本:JDK8 maven版本:maven-3.5.2 开发工具:Itellij IDEA 2017.1 前提条件:已安装以上软件并配置好jdk和maven的环境变量 创建步骤: 点 ...
- Django基础五之django模型层(一)单表操作
一 ORM简介 MVC或者MVC框架中包括一个重要的部分,就是ORM,它实现了数据模型与数据库的解耦,即数据模型的设计不需要依赖于特定的数据库,通过简单的配置就可以轻松更换数据库,这极大的减轻了开发人 ...
- 前端独立引用 ejs模版
ejs 用法不再多说,网自行查阅.一个是基于nodeJS平台运行的EJS,另外一个是在浏览器执行的EJS.这里要说的是html 独立引入ejs.min.js 使用的一个注意点. 如:index.htm ...