angular 封装公共方法
angular封装公共方法到service中间件,节省开发时间
layer.service.ts
openAlert(callback) {// 传递回调函数 const dialogRef = this.dialog.open(AlertComponent, { hasBackdrop: true, data: this.layer.alert }); // // alert关闭的时候会检测到是哪个关闭事件; dialogRef.afterClosed().subscribe(val => { if(callback){ callback(val); } }); }
组件接收调用
demo.component.html
<button (click)="openConfirm()">open confirm</button>
demo.component.ts
import {LayerService} from '../service/layer.service'; export class DemoComponent implements OnInit { constructor( private layerService:LayerService) { } // 打开confirm确认框 openConfirm() { this.layerService.layer.confirm.content = '是否驳回?' this.layerService.openConfirm((val) => { if(val==0){ console.log('确定--调接口'); console.log(val); } if(val==1){ console.log('取消--不调接口关闭弹层'); console.log(val); } if(val==2){ console.log('×--不调接口关闭弹层'); console.log(val); } }); } }