angular - 如何从 Angular 2 中的 url 获取值

标签 angular typescript

我正在尝试获取值,但它不起作用。下面是我的网址,我想从网址中获取 1 作为数字

https://localhost:44300/Portal#/user-edit/1

constructor(private router: Router,
    private userService: UserService) {

    this.router
        .routerState
        .queryParams
        .subscribe(params => {
            this.id = params['id'];
        });

最佳答案

您应该注入(inject) ActivatedRoute 以获取路由参数,如下所示,

constructor(private router: Router,
    private userService: UserService,
    private route: ActivatedRoute,) {  //<----- here

    this.route.params.subscribe(params => {
            this.id = +params['id'];   //<----- + sign converts string value to number
});

在这里阅读更多:https://angular.io/docs/ts/latest/guide/router.html#!#route-parameters

关于angular - 如何从 Angular 2 中的 url 获取值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39364225/

相关文章:

angular - 在 ionic 2 应用程序中使用 promise with observable

jquery - Angular4 找不到 Jquery-UI 函数

angular - Firestore 引用

javascript - 如何在图像src ionic中使用变量

reactjs - 如何在 react-native 中正确输入 measureLayout

javascript - Angular 应用程序中的 event.stopPropagation() 导致 jasmine 超时

javascript - 如何格式化echart中的工具提示值( Angular )

javascript - textarea resize 在 IE 中不起作用,我想在 IE 中调整大小,它在 chrome 中工作

typescript - Failed to construct 'XMLHttpRequest' : Please use the 'new' operator, 这个DOM对象的构造函数不能作为函数调用

javascript - 如何在 typescript 中安全地声明嵌套对象类型