Angular2从URL订阅非数字参数

时间:2017-01-24 08:54:50

标签: javascript angular typescript

我遇到了从网址订阅非数字参数的问题。 lambda params => {}内的局部变量只能是数字?我的代码:

getRecordDetail() {
        this.sub = this.activatedRoute.params.subscribe(
            params => {
                if (params[ 'id' ] != undefined) {
                    let id = +params[ 'id' ]
                    console.log('ID: ', id);


                } else console.log("UNDEFINED ASSETID");
            }
        );
    }

为什么let id总是有型号?我怎样才能获得String parametr?

3 个答案:

答案 0 :(得分:2)

您需要删除+运算符,这是一种将变量转换为Number

的方法
let id = params['id'];

答案 1 :(得分:2)

+params[ 'id' ]

+ 放在变量前面等于parseInt(params[ 'id' ])

答案 2 :(得分:0)

嗯,我的不好,+=给出了一个类型编号,如果let xxx = params[ 'id' ]则可以传递任何类型的变量。