在 Angular 2 中,我希望能够使用 route.path
来……获取路径。
在组件构造函数中我有:
constructor(private route: Route) {}
所以我希望能够调用:
this.route.path
对于应用 Bootstrap ,我得到了:
bootstrap(AppComponent,
[
ROUTER_PROVIDERS,
]);
但我仍然收到No Provider for Route! 错误
最佳答案
我假设您要注入(inject) Location
而不是 Route
。 Route
用于路由配置,Angular 无法知道要注入(inject)哪个 Route
实例。
Location
提供了path()
函数来获取当前的URL。
根据 Angular2 版本,有不同的导入路径。
另见 Location and HashLocationStrategy stopped working in beta.16
<= 测试版 15
import {Location} from 'angular2/router';
>= 测试版 16 < rc.0
import {Location} from 'angular2/platform/common';
constructor(private location:Location) {
console.log(location.path());
}
>= rc.0
import {Location} from '@angular/common';
关于Angular 2获取路线没有路线提供者,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37067704/