Angular2.0实现modal对话框的方法示例


Posted in Javascript onFebruary 18, 2018

本文实例讲述了Angular2.0实现modal对话框的方法。分享给大家供大家参考,具体如下:

觉得写的比较巧妙的就是样式的选取~记录下

CSS部分

.font {
 font-family: "Microsoft YaHei", Arial;
 font-size: 12px;
 color: #333333;
}
.ky-modal-content {
 min-width: 520px;
 min-height: 240px;
}
.ky-modal-header {
 /*height : 40px;*/
 padding: 0 10px 0 10px;
}
.ky-modal-title {
 font-size: 16px;
 font-weight: 100;
}
.ky-modal-body {
 min-height: 110px;
 text-align: center;
}
.ky-modal-footer {
 height: 30px;
 border-top: 0;
 text-align: -webkit-center;
}
.ky-modal-message {
 padding-left: 3px;
 vertical-align: middle;
}
.ky-modal-icon {
 font-size: 16px;
 vertical-align: middle;
}
.ky-modal-question-icon {
 color:#ff8000;
}
.ky-modal-check-icon {
 color:green;
}
.ky-modal-exclamation-icon {
 color:red;
}
.ky-modal-close {
 outline: none;
 font-size: 30px;
 margin-top: 8px;
 font-weight: 100;
 vertical-align: -webkit-baseline-middle;
}
.vertical-align-center {
 display: flex;
 display: -webkit-box;
 display: -moz-box;
 -webkit-box-align: center;
 -moz-box-align: center;
 text-align: -webkit-center;
}

HTML部分

<div [id]="id" class="modal fade" tabindex="-1" role="dialog" aria-hidden="true">
 <div class="modal-dialog">
 <div class="modal-content ky-modal-content">
  <div class="modal-header ky-modal-header">
  <button type="button" class="close ky-modal-close" data-dismiss="modal" aria-label="Close">
   <span style="position: fixed;right: 10px;top:-6px" aria-hidden="true">×</span>
  </button>
  <h4 class="modal-title ky-modal-title" >{{title}}</h4>
  </div>
  <div class="modal-body ky-modal-body vertical-align-center">
  <div>
   <span style="font-size:18px;"> <span style="color:#ff0000;"><i class="fa ky-modal-icon" [ngClass]="iconClass" aria-hidden="true"></i></span></span>
   <span class="ky-modal-message">{{message}}</span>
  </div>
  </div>
  <div class="modal-footer ky-modal-footer">
  <ky-button [type]="conformButtonType" data-dismiss="modal" (click)="confirmButtonDown()">{{confirmText}}</ky-button>
  <ky-button [type]="'cancel'" data-dismiss="modal" (click)="cancelButtonDown()">{{cancelText}}</ky-button>
  </div>
 </div>
 </div>
</div>

JS部分

import { Component, Input, Output, EventEmitter, OnInit } from '@angular/core';
@Component({
 moduleId: module.id,
 selector: 'ky-modal',
 styleUrls: ['./ky-modal.css'],
 templateUrl: './ky-modal.component.html',
})
export class KyModalComponent implements OnInit {
 @Input() title:string = '';
 @Input() type:string = '';
 @Input() message:string = '';
 @Input() confirmText:string = '';
 @Input() cancelText:string = '';
 @Input() id:string;
 @Input() conformButtonType:string;
 iconType ='question';
 iconClass :any = {'fa-question-circle':false,
  'fa-check-circle':false,
  'fa-exclamation-circle':false};
 typeList = ['question', 'check', 'exclamation'];
 @Output() actionButtonDown = new EventEmitter();
 @Output() undoButtonDown = new EventEmitter();
 cancelButtonDown() {
  this.undoButtonDown.emit('event');
 }
 confirmButtonDown() {
  this.actionButtonDown.emit('event');
 }
 determine() {
  let that = this;
  if(that.type && _.contains(that.typeList,that.type)) {
   that.iconType = that.type;
  }
  that.iconClass[`fa-${that.iconType}-circle`] = true;
  that.iconClass[`ky-modal-${that.iconType}-icon`] = true;</span>
 }
 ngOnInit() {
  this.determine();
 }
}

希望本文所述对大家AngularJS程序设计有所帮助。

Javascript 相关文章推荐
JavaScript 精粹读书笔记(1,2)
Feb 07 Javascript
js浏览器本地存储store.js介绍及应用
May 13 Javascript
JavaScript让网页出现渐隐渐显背景颜色的方法
Apr 21 Javascript
JavaScript实现点击按钮就复制当前网址
Dec 14 Javascript
JavaScript变量作用域_动力节点Java学院整理
Jun 27 Javascript
ionic环境配置及问题详解
Jun 27 Javascript
基于node.js的fs核心模块读写文件操作(实例讲解)
Sep 10 Javascript
探索Vue高阶组件的使用
Jan 08 Javascript
AngularJS使用ui-route实现多层嵌套路由的示例
Jan 10 Javascript
微信小程序页面间跳转传参方式总结
Jun 13 Javascript
JavaScript Window浏览器对象模型原理解析
May 30 Javascript
三种方式清除vue路由跳转router-link的历史记录
Apr 10 Vue.js
JS实现运动缓冲效果的封装函数示例
Feb 18 #Javascript
Vue底层实现原理总结
Feb 17 #Javascript
js实现控制文件拖拽并获取拖拽内容功能
Feb 17 #Javascript
图文介绍Vue父组件向子组件传值
Feb 17 #Javascript
JavaScript异步加载问题总结
Feb 17 #Javascript
js装饰设计模式学习心得
Feb 17 #Javascript
Vue组件库发布到npm详解
Feb 17 #Javascript
You might like
php ckeditor上传图片文件名乱码解决方法
2013/11/15 PHP
php程序员应具有的7种能力小结
2014/11/27 PHP
php发送html格式文本邮件的方法
2015/06/10 PHP
在你的网页中嵌入外部网页的方法
2007/04/02 Javascript
js 格式化时间日期函数小结
2010/03/20 Javascript
JQuery中操作Css样式的方法
2014/02/12 Javascript
用循环或if语句从json中取数据示例
2014/08/18 Javascript
JavaScript中document对象使用详解
2015/01/06 Javascript
13个PHP函数超实用
2015/10/21 Javascript
jQuery简单实现上下,左右滑动的方法
2016/06/01 Javascript
AngularJS ng-controller 指令简单实例
2016/08/01 Javascript
jQuery.form.js插件不能解决连接超时(timeout)的原因分析及解决方法
2016/10/14 Javascript
详解JS-- 浮点数运算处理
2016/11/28 Javascript
浅谈jQuery中事情的动态绑定
2017/02/12 Javascript
vue 计时器组件的实现代码
2017/09/14 Javascript
vue模块拖拽实现示例代码
2019/03/09 Javascript
详解如何在Vue项目中导出Excel
2019/04/19 Javascript
了解javascript中变量及函数的提升
2019/05/27 Javascript
Vue中computed和watch有哪些区别
2020/12/19 Vue.js
Django框架中方法的访问和查找
2015/07/15 Python
Python的面向对象编程方式学习笔记
2016/07/12 Python
Python实现翻转数组功能示例
2018/01/12 Python
Flask和Django框架中自定义模型类的表名、父类相关问题分析
2018/07/19 Python
详谈Python 窗体(tkinter)表格数据(Treeview)
2018/10/11 Python
python使用正则来处理各种匹配问题
2019/12/22 Python
Python彻底删除文件夹及其子文件方式
2019/12/23 Python
Python编程快速上手——疯狂填词程序实现方法分析
2020/02/29 Python
教你一分钟在win10终端成功安装Pytorch的方法步骤
2021/01/28 Python
python利用proxybroker构建爬虫免费IP代理池的实现
2021/02/21 Python
pytorch 中forward 的用法与解释说明
2021/02/26 Python
销售文员岗位职责
2013/11/29 职场文书
党的群众路线教育实践活动整改方案
2014/10/28 职场文书
教师理论学习心得体会
2016/01/21 职场文书
医德医风学习心得体会
2016/01/25 职场文书
pandas 操作 Excel操作总结
2021/03/31 Python
Win11 KB5015814遇安装失败 影响开始菜单性能解决方法
2022/07/15 数码科技