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 相关文章推荐
利用Ext Js生成动态树实例代码
Sep 08 Javascript
JQuery 常用方法基础教程
Feb 06 Javascript
各情景下元素宽高的获取实现代码
Sep 13 Javascript
toggle一个div显示或隐藏且可扩展成自定义下拉框
Sep 12 Javascript
jquery中ajax跨域方法实例分析
Dec 18 Javascript
jquery实现的判断倒计时是否结束代码
Feb 05 Javascript
js操作数据库实现注册和登陆的简单实例
May 26 Javascript
JavaScript实现输入框与清空按钮联动效果
Sep 09 Javascript
使用jquery给指定的table动态添加一行、删除一行
Oct 13 Javascript
JavaScript Canvas绘制圆形时钟效果
Aug 20 Javascript
微信小程序一周时间表功能实现
Oct 17 Javascript
es6函数之rest参数用法实例分析
Apr 18 Javascript
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
Javascript 继承机制的实现
2009/08/12 Javascript
javascript instanceof 内部机制探析
2010/10/15 Javascript
一个基于jQuery的树型插件(OrangeTree)使用介绍
2012/05/03 Javascript
原生js ActiveXObject获取execl里面的值
2013/11/01 Javascript
利用js实现前台动态添加文本框,后台获取文本框内容(示例代码)
2013/11/25 Javascript
NODE.JS加密模块CRYPTO常用方法介绍
2014/06/05 Javascript
Node.js插件的正确编写方式
2014/08/03 Javascript
jQuery实现三级菜单的代码
2016/05/09 Javascript
Bootstrap优化站点资源、响应式图片、传送带使用详解3
2016/10/14 Javascript
javascript实现下雨效果
2017/03/27 Javascript
详解基于webpack和vue.js搭建开发环境
2017/04/05 Javascript
JS实现简单抖动效果
2017/06/01 Javascript
Vue render渲染时间戳转时间,时间转时间戳及渲染进度条效果
2018/07/27 Javascript
node.js基于dgram数据报模块创建UDP服务器和客户端操作示例
2020/02/12 Javascript
解决vue单页面 回退页面 keeplive 缓存问题
2020/07/22 Javascript
[06:13]DOTA2进化论(修改版)
2013/10/08 DOTA
[01:42]TI4西雅图DOTA2前线报道 第一顿早饭哦
2014/07/08 DOTA
python实现机械分词之逆向最大匹配算法代码示例
2017/12/13 Python
Python常用字符串替换函数strip、replace及sub用法示例
2018/05/21 Python
python监测当前联网状态并连接的实例
2018/12/18 Python
python基于FTP实现文件传输相关功能代码实例
2019/09/28 Python
从训练好的tensorflow模型中打印训练变量实例
2020/01/20 Python
python MultipartEncoder传输zip文件实例
2020/04/07 Python
阿根廷票务网站:StubHub阿根廷
2018/04/13 全球购物
Java面试题:请说出如下代码的输出结果
2013/04/22 面试题
党员学习十八大感想
2014/01/17 职场文书
广播体操口号
2014/06/18 职场文书
户籍证明书标准模板
2014/09/10 职场文书
2014保险公司内勤工作总结
2014/12/16 职场文书
董事长助理岗位职责
2015/02/11 职场文书
统计员岗位职责
2015/02/11 职场文书
2015年全国科普日活动总结
2015/03/23 职场文书
2015年清剿火患专项行动工作总结
2015/07/27 职场文书
治庸问责工作总结
2015/08/11 职场文书
创业计划书详解
2019/07/19 职场文书
python 网络编程要点总结
2021/06/18 Python