我怎麼能防止默認在角2中的路由?在路由器訂閱,我只得到路徑名。我沒有得到它的事件。角2中是否有其他服務提供商獲取路線更改事件?防止默認路由 - 角2
app.component.js
(function (app) {
app.AppComponent = ng.core
.Component({
selector: 'my-app',
templateUrl: 'app/views/main.html',
directives: [ng.router.ROUTER_DIRECTIVES],
viewProviders: [ng.http.HTTP_PROVIDERS]
})
.Class({
constructor: [ng.router.Router, ng.http.Http, function (router, http) {
this.router.subscribe(function (pathname) {
//console.log(pathname);
});
}],
});
ng.router
.RouteConfig([
{ path: '/login', component: app.LoginComponent, name: 'Login', useAsDefault: true },
{ path: '/todos', component: app.TodosComponent, name: 'Todos' },
])(app.AppComponent);
})(window.app || (window.app = {}));
boot.js
(function (app) {
document.addEventListener('DOMContentLoaded', function() {
ng.platform.browser.bootstrap(app.AppComponent, [ng.router.ROUTER_PROVIDERS, ng.core.provide(ng.router.LocationStrategy, { useClass: ng.router.HashLocationStrategy })]);
});
})(window.app || (window.app = {}));
@ThierryTemplier你能幫助解決這個問題嗎? –
這是不是很清楚你想要做什麼。您是否想要阻止具有點擊處理程序的鏈接的默認行爲? – Ludohen
'$ scope。$ on('$ routeChangeStart',function(event,next,current){})'在角度1中,_ $ routeChangeStart_給出了路由變更事件的權利?同樣的事情,我需要在這裏角2.我用路由器訂閱獲取路線變化。但我只有路徑名。 –