获取以下网址参数的最佳方法是:foo,bar,baz
$.fancybox.defaults.backFocus = false;
我尝试过:
https://somesite.com/results?foo=123&bar=69&baz=456
这有效,但是它会触发两次,第一次是未定义的,第二次是使用值的。我还读到,这是一种不好的做法,并且将来会贬值。
我尝试的第二种方法是:
this.route.queryParams.subscribe(param => {
let foo = param['foo'];
let bar = param['bar'];
let baz = param['baz'];
})
这将记录正确的URL,但不会解析它。您将如何解析它,这是一种有效的方法吗?
在Angular6 / 7中解决我的问题的最佳方法是什么?
答案 0 :(得分:0)
ngOnInit() {
this.param1 = this.route.snapshot.paramMap.get('foo');
this.param2 = this.route.snapshot.paramMap.get('bar');
this.param3 = this.route.snapshot.paramMap.get('baz');
}
constructor(
public route:ActivatedRoute){
}
ngOnInit(){
const self = this;
this.route.queryParams.subscribe(params => {
self.foo= params['foo'];
self.bar= params['bar'];
self.foo= params['foo'];
});
}