Мое приложение ember полностью перезагружается, когда я добавляю queryParam в transitionTo () - PullRequest
1 голос
/ 19 сентября 2019

Я выполняю поиск на основе данных, введенных пользователем в форму поиска, и перенаправляю на маршрут с этими данными как queryParam, и это полностью перезагружает приложение.

Я выполняю переход следующим образом:где 'search' - данные, введенные пользователем

this.get('router').transitionTo('private.route1', { queryParams: { search: search } });

В контроллере маршрута назначения я объявил этот запросParam

export default Controller.extend({
    queryParams: ['search'],
});

и там ясделать поиск API на основе этого queryParam.Все работает нормально, но когда я делаю transitionTo() для этого маршрута, по какой-то причине в начало пути моего маршрута добавляется символ '?', и это перезагружает страницу.

Результат, который я ожидалэто то, что переход сделан, URL выглядит так, и приложение не полностью перезагружается:

http://localhost:4200/#/private/route1?search=userdata

И реальный результат:

http://localhost:4200/?#/private/route1?search=userdata

с символом '?'в начале пути, который приводит к полной перезагрузке приложения.

1 Ответ

0 голосов
/ 20 сентября 2019

Пересматривая код снова и снова и пробуя разные варианты использования, я понял, что происходящее не было проблемой с ember и его queryParams, а в форме, где я получал пользовательские данные для поиска, который я выполнял.нативная отправка, и это обновило приложение и добавило '?'к началу пути.Решение: в акции для поиска

actions:{
  search(event){
    event.preventDefault();
    // next code....
  }
}

...