Я передал параметры в URL моему ионному приложению
http://localhost:8100/welcompage/overview?brand=bmw
Я использую ActivatedRoute для получения данных, переданных в качестве параметров в URL-адресе.
constructor(private route: ActivatedRoute) {
}
ngOnInit() {
this.route.params.subscribe(params => {
console.info(params['brand']);
});
}
вывод всегда "не определен", хотя в URL-адресе есть параметры
Первый метод:
let brand = this.route.snapshot.paramMap.get('brand');
Второй метод:
this.route.paramMap.subscribe(
(data) => {
console.info(data.brand)
}
);
method1 или method2 соответствуют вашим потребностям, если вы уже определили параметры бренда в своем маршруте url/:brand. но если вы используете параметры запроса url?brand=value1&property2=vaule2... Вы можете получить данные параметров запроса, используя метод3:
метод3:
this.route.queryParams
.subscribe(params => {
console.info(params); // { brand: "bmw" }
let brand = params.brand;
console.info(brand); // bmw
}
);
ответ отредактирован. Вы можете использовать второй метод после импорта import {ActivatedRoute} из '@angular/router';
Я думаю, что ваша проблема будет решена, когда вы примените метод3 ^^
да, это работает, но какова разница между params и queryParams?
параметры маршрутизатора должны быть определены в вашем угловом маршрутизаторе
приветственная страница/обзор/:бренд
но для параметров запроса вам нужно только и разделены '?' для первых параметров для следующих параметров вам нужно только добавить '&'
пример: локальный: 8100/welcompage/… ....
затем будет преобразован как объект, когда вы получите данные параметров запроса
{бренд:bmw,свойство1:значение1,свойство2:значение2,свойство3:значение3,свойство4:значение4}
все еще не определено