国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > JavaScript > 正文

Angular 2使用路由自定義彈出組件toast操作示例

2019-11-19 11:36:38
字體:
來源:轉載
供稿:網友

本文實例講述了Angular 2使用路由自定義彈出組件toast操作。分享給大家供大家參考,具體如下:

原理:

使用Angular2的命名路由插座,一個用來顯示app正常的使用,一個用來顯示彈出框,

<router-outlet name='apps'></router-outlet><router-outlet name='popup'></router-outlet>

瀏覽器的導航欄中則這樣顯示

http://127.0.0.1:4200/(popup:toast//apps:login)

路由配置

const rootRoute: Routes = [{  path: 'lists',  component: Lists,  outlet: 'apps',  children: [ ... ]},{  path: 'toast',  component: Toast,  outlet: 'popup',},...];

toast內容

<div class="box">  <div class="toast-box">    <p class="toast-title">提示</p>    <div class="toast-content">      <ng-container *ngIf="toastParams.img">        <img src="{{toastParams.img}}" class="toast-content-img">      </ng-container>      <ng-container *ngIf="toastParams.title">        <p class="toast-content-p">{{toastParams.title}}</p>      </ng-container>    </div>  </div></div>

ts

在ngOninit函數中獲取顯示的參數即可

this.toastParams = this.popupSVC.getToastParams();

創建用來跳轉至popup路由的服務,例如popup.service

import { Injectable } from '@angular/core';import { Router } from '@angular/router';@Injectable()export class PopupService {  private toastParams;  private loadingParams;  constructor(    private router: Router  ) { }  toast(_params) {    this.toastParams = _params;    let _duration;    if (_params.duration) {      _duration = _params.duration;    } else {      _duration = 500;    }    const _outlets = { 'popup': 'toast' };    this.router.navigate([{ outlets: _outlets }]);    setTimeout(() => {      const _outlets2 = { 'popup': null };      this.router.navigate([{ outlets: _outlets2 }]);    }, _duration);  }  getToastParams() {    return this.toastParams;  }}

使用:

一、在app.module.ts中將服務導進來,注冊

import { PopupService } from './svc/popup.service';@NgModule({  imports: [    ...  ],  declarations: [  ...  ],  providers: [    PopupService,  ...  ],  bootstrap: [AppComponent]})

二、在使用的test.ts中導入

import { PangooService } from './svc/pangoo.service';constructor(  private popupSVC: PopupService,) { }

三、在html中定義一個函數

<div (click)="test()"></div>

四、調用

test(){  this.popupSVC.toast({    img: '彈出圖片地址!',    title: '彈出消息內容!',    duration: 2000, //toast多久后消失,默認為500ms  });}

更多關于AngularJS相關內容感興趣的讀者可查看本站專題:《AngularJS指令操作技巧總結》、《AngularJS入門與進階教程》及《AngularJS MVC架構總結

希望本文所述對大家AngularJS程序設計有所幫助。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 珲春市| 青阳县| 博白县| 六枝特区| 秦皇岛市| 门源| 资兴市| 肥西县| 蒙城县| 林芝县| 夏河县| 永新县| 五莲县| 临夏县| 拜城县| 延长县| 池州市| 万州区| 施甸县| 淮北市| 六枝特区| 高雄县| 耿马| 沂南县| 安吉县| 房产| 临城县| 乌兰察布市| 金秀| 思茅市| 潜山县| 木兰县| 青阳县| 集贤县| 漠河县| 河池市| 井陉县| 遂昌县| 沙坪坝区| 达拉特旗| 汕尾市|