Angular 7 полностью перезагружен по тому же URL - PullRequest
0 голосов
/ 03 апреля 2019

У меня есть этот код:

onSubmit(search: string, from: string, to: string) {
        this.router.navigate(['/recherche'], {
          queryParams: {
            search: search,
            from: from,
            to: to
          }
        });
      }

И этот вид:

       <form ngNoForm>
          <div class="row">
            <div class="col-11">
              <input #search id="search" name="search" class="form-control form-control-lg w-100" type="text" />
            </div>
            <div class="col-1">
              <button (click)="onSubmit(search.value, from.value, to.value);" class="btn btn-lg btn-black" type="submit"><i class="fa fa-search"></i></button>
            </div>
          </div>

Вот как я получаю параметры на странице результатов:

    constructor(
        private route: ActivatedRoute,
        private eventService: EventService,
        private locationService: LocationService,
      ) {});
      }

  ngOnInit() {
    // Subscribe to query parameters
    this.route.queryParamMap.subscribe(queryParams => {
      // Retreive the parameters
      let search = queryParams.get('search').trim();
      let from = queryParams.get('from');
      let to = queryParams.get('to');

      // List the events
      this.listEvents(search, from, to);

      // List the locations
      this.listLocations(search);
    });
  }

При первом поиске все идет хорошо. Если я выполнил второй поиск, приложение полностью перезагрузилось. Чего мне не хватает?

Кодовая часть модуля маршрутизации:

{ 
    path: 'recherche',
    component: SearchComponent
  },

Если быть более точным , приложение перезагружается только тогда, когда я нахожусь на пути /recherche. Если я перейду на другой маршрутизатор, прежде чем выполнить второй поиск, он сработает.

...