我有一个Angular2服务,应该从http://localhost:3001/?foobar=1236
这样的网址返回参数import { Injectable } from '@angular/core';
import { ActivatedRoute } from '@angular/router';
import 'rxjs/add/operator/map';
@Injectable()
export class ParameterService {
constructor(private route: ActivatedRoute) { }
getParameter() {
return this.route.snapshot.queryParams.foobar;
}
}
但是当我调用服务的getParameter()方法时,我得到错误:
error TS2339: Property 'foobar' does not exist on type '{ [key: string]: any; }'
并在错误之后返回正确的结果。我可以使用调试器访问foobar参数而不会出现任何问题。有人有类似的问题吗?我可以想象它会被提前调用吗?
(可能重复:angular2 rc6: Property queryParams does not exist on type RouterState)
答案 0 :(得分:7)
这是你获取参数的方式:
this.route.snapshot.queryParams['foobar'];