国产99久久精品_欧美日本韩国一区二区_激情小说综合网_欧美一级二级视频_午夜av电影_日本久久精品视频

最新文章專題視頻專題問答1問答10問答100問答1000問答2000關鍵字專題1關鍵字專題50關鍵字專題500關鍵字專題1500TAG最新視頻文章推薦1 推薦3 推薦5 推薦7 推薦9 推薦11 推薦13 推薦15 推薦17 推薦19 推薦21 推薦23 推薦25 推薦27 推薦29 推薦31 推薦33 推薦35 推薦37視頻文章20視頻文章30視頻文章40視頻文章50視頻文章60 視頻文章70視頻文章80視頻文章90視頻文章100視頻文章120視頻文章140 視頻2關鍵字專題關鍵字專題tag2tag3文章專題文章專題2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章專題3
問答文章1 問答文章501 問答文章1001 問答文章1501 問答文章2001 問答文章2501 問答文章3001 問答文章3501 問答文章4001 問答文章4501 問答文章5001 問答文章5501 問答文章6001 問答文章6501 問答文章7001 問答文章7501 問答文章8001 問答文章8501 問答文章9001 問答文章9501
當前位置: 首頁 - 科技 - 知識百科 - 正文

angular4 如何在全局設置路由跳轉動畫的方法

來源:懂視網 責編:小采 時間:2020-11-27 22:31:30
文檔

angular4 如何在全局設置路由跳轉動畫的方法

angular4 如何在全局設置路由跳轉動畫的方法:最近用angular4寫項目需要為每次路由跳轉增加動畫,看了一下官方文檔,雖然可以實現,但是要每個組件都引入一次animations,比較麻煩,找網上也查閱了很多資料,但是都沒找到適用的方法,最后自己寫了一種方法如下: 首先在app.module中導入Browser
推薦度:
導讀angular4 如何在全局設置路由跳轉動畫的方法:最近用angular4寫項目需要為每次路由跳轉增加動畫,看了一下官方文檔,雖然可以實現,但是要每個組件都引入一次animations,比較麻煩,找網上也查閱了很多資料,但是都沒找到適用的方法,最后自己寫了一種方法如下: 首先在app.module中導入Browser

最近用angular4寫項目需要為每次路由跳轉增加動畫,看了一下官方文檔,雖然可以實現,但是要每個組件都引入一次animations,比較麻煩,找網上也查閱了很多資料,但是都沒找到適用的方法,最后自己寫了一種方法如下:

首先在app.module中導入BrowserAnimationsModule

import { BrowserAnimationsModule } from '@angular/platform-browser/animations';

@NgModule({
 imports: [
 BrowserAnimationsModule

在根目錄src/app/下創建一個animations.ts。內容如下,這里我用到query和group是想兩個頁面來回切換有過度痕跡

import { AnimationEntryMetadata, state } from '@angular/core';
import { trigger, transition, animate, style, query, group } from '\@angular/animations';

export const routeAnimation: AnimationEntryMetadata =
 trigger('routeAnimation', [
 transition(':enter', [
 style({
 position: 'absolute'
 }),
 animate('0.5s ease-in-out')
 ]),
 transition('* => *', [
 query(':leave', style({ transform: 'translateX(0)', position: 'absolute'}), { optional: true }),
 query(':enter', style({ transform: 'translateX(100%)', position: 'absolute'}), { optional: true }),

 group([
 query(':leave', animate('.5s ease-in-out', style({transform: 'translateX(-100%)'})), { optional: true }),
 query(':enter', animate('.5s ease-in-out', style({transform: 'translateX(0)'})), { optional: true })
 ])
 ])
 ]);

接著在app.component中使用 NavigationEnd 設置每次路由跳轉監聽的參數變化并且引入animations模塊

import { Router, NavigationEnd } from '@angular/router';
import { routeAnimation } from './animations';

@Component({
 selector: 'app-root',
 templateUrl: './app.component.html',
 styleUrls: ['./app.component.less'],
 animations: [routeAnimation]
})
// router跳轉動畫所需參數
 routerState: boolean = true;
 routerStateCode: string = 'active';

this.router.events.subscribe(event => {
 if (event instanceof NavigationEnd) {
 // 每次路由跳轉改變狀態
 this.routerState = !this.routerState;
 this.routerStateCode = this.routerState ? 'active' : 'inactive';
 }
 });

最后在app.component.html中聲明路由動畫就可以了

<div id="app" [@routeAnimation]="routerStateCode">
 <router-outlet></router-outlet>
</div>

現在全局路由跳轉都有動畫了,不用一個一個組件導入animations。

聲明:本網頁內容旨在傳播知識,若有侵權等問題請及時與本網聯系,我們將在第一時間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com

文檔

angular4 如何在全局設置路由跳轉動畫的方法

angular4 如何在全局設置路由跳轉動畫的方法:最近用angular4寫項目需要為每次路由跳轉增加動畫,看了一下官方文檔,雖然可以實現,但是要每個組件都引入一次animations,比較麻煩,找網上也查閱了很多資料,但是都沒找到適用的方法,最后自己寫了一種方法如下: 首先在app.module中導入Browser
推薦度:
  • 熱門焦點

最新推薦

猜你喜歡

熱門推薦

專題
Top
主站蜘蛛池模板: 亚洲欧美国产精品专区久久 | 亚洲欧美综合另类 | 91国内精品久久久久免费影院 | 亚洲欧美日韩成人一区在线 | 国产日韩欧美精品在线 | 国产精选在线视频 | 97国产精品欧美一区二区三区 | 欧美激情影院 | 国产在线视频不卡 | 亚洲欧美国产日本 | 欧美一区三区 | 日本免费一区二区三区 | 亚洲v欧美 | 欧美一区二区三区免费高 | 欧美理论电影在线观看 | 日韩第二页 | 久久久久成人精品一区二区 | 亚洲欧美在线免费观看 | 久久久久无码国产精品一区 | 日韩欧美国产另类 | 国产在线视频一区 | 亚洲小说欧美激情另类 | 国产色在线视频 | 美国一级大黄大色毛片视频一 | 亚洲国内精品 | 久久99九九精品免费 | 精品日韩一区二区 | 性久久久久| 热综合一本伊人久久精品 | 亚洲国产成人精品一区二区三区 | 国产激情视频在线 | 精品国产日韩亚洲一区在线 | 精品国产一级在线观看 | 亚洲欧美在线视频 | 亚洲日韩图片专区第1页 | 国产精品一区二区三区四区五区 | 国产欧美日韩三级 | 91热成人精品国产免费 | 欧美成人久久电影香蕉 | 亚洲高清毛片 | 国内自拍视频网站 |