angular路由事件
<p>Angular 4检测路由变化,可以使用router.events来监听:</p><p>支持的事件类型:</p>
<ul>
<li>NavigationStart:导航开始</li>
<li>NavigationEnd:导航结束</li>
<li>NavigationCancel:取消导航</li>
<li>NavigationError:导航出错</li>
<li>RoutesRecoginzed:路由已认证</li>
</ul>
<p>在判断事件类型需要导入对应的事件类型,如:</p>
<pre><code>import { Router, NavigationStart } from '@angular/router';
</code></pre>
<p><strong>监听单一事件</strong></p>
<pre><code>this.router.events
.filter((event) => event instanceof NavigationEnd)
.subscribe((event:NavigationEnd) => {
//do something
});
</code></pre>
<p><strong>监听多个事件</strong></p>
<pre><code>constructor(router:Router) {
router.events.subscribe(event:Event => {
if(event instanceof NavigationStart) {
//
} else if(event instanceof NavigationEnd) {
//
} else if(event instanceof NavigationCancel) {
//
} else if(event instanceof NavigationError) {
//
} else if(event instanceof RoutesRecognized) {
//
}
});
}<br><br>运用实例参考:https://www.cnblogs.com/mary-123/p/10728614.html<br><br></code></pre><br><br>
来源:https://www.cnblogs.com/mary-123/p/11276454.html
頁:
[1]