Как использовать queryParam? - PullRequest
0 голосов
/ 29 марта 2019

Здесь у меня есть проект класса, где мне нужно создать Книжный сайт, где есть некоторая информация о Книгах. Теперь информация о книгах должна быть получена из URL, который является.

 myurl  = "http://advjavaapp-env.imadbprai6.us-west- 
2.elasticbeanstalk.com/booksapp/books";

Теперь у меня есть информация. Но на Книжном сайте есть панель навигации, в которой есть такие опции, как Newarrivals, Select Genre (раскрывающийся список с опцией Children, Fiction, mystery) и All Book. Мне нужно использовать queryParam, чтобы показать результат в соответствии с именами. Условия

Для всех книг отображается URL-адрес /books.Данные извлекаются из myurl / booksapp / books, где myurl равен
http://advjavaapp -env.imadbprai6.us-west-2.elasticbeanstalk.com

Книги по жанрам - это выпадающий список «Художественная литература, Дети, Тайны». Отображаемый URL-адрес - / books / selopt, где selopt - выбранная опция в раскрывающемся меню. Данные извлекаются из myurl / booksapp / books / selopt.

Для новых поступлений отображается URL-адрес /books?newarrival=yes.Data, полученный из myurl / booksapp / books? Newarrival = yes

Пожалуйста, помогите мне с этим, поскольку я пытаюсь сделать это за последние два дня.

работа, которую я делал до сих пор ..

In Booksdetails.Component.ts

myurl   = "http://advjavaapp-env.imadbprai6.us-west- 
 2.elasticbeanstalk.com/booksapp/books";

url: URL[] = [];
showmyurl: URL[] = [];
newarrival: string;
url1: string = this.myurl + '?newarrival' + this.newarrival;

ngOnInit() {
  this.route.queryParamMap.subscribe(params => {
  console.log(params);
  this.newarrival = params[ 'newarrival' ];
   });
}

 new(){
   this.netService.getData(this.url1)
   .subscribe(resp => {
    this.showmyurl = resp;
    })
  }

1 Ответ

0 голосов
/ 29 марта 2019

измените свой код на ниже

ngOnInit() {
   this.route.queryParamMap.subscribe(params => {
   console.log(params);
   this.newarrival = params.params[ 'newarrival' ];
  });
}

new(){
 this.url1 = this.myurl + '?newarrival=' + this.newarrival;
 this.netService.getData(this.url1)
 .subscribe(resp => {
  this.showmyurl = resp;
   })
}
...