Любопытное поведение параметра запроса «состояние» с angular2 Router

Я не нахожу никакой документации об этом драгоценном поведении маршрутизатора Angular 2: если я загружаю свое приложение с параметром запроса «состояние», маршрутизатор автоматически переходит к заданному состоянию.

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

Например: http://my.app/?state=#/screen1&anotherParam=something автоматически "перенаправляет" мое приложение на http://my.app/#/screen1, тогда я теряю anotherParam.

Это недокументированная функция или ошибка? Или вы видите какие-либо страницы, которые я пропустил об этом поведении?


person Karbos 538    schedule 10.01.2017    source источник


Ответы (1)


Это известная проблема

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

person Günter Zöchbauer    schedule 10.01.2017
comment
Спасибо за Ваш ответ. Я думаю, что ваш охранник предложений, который охватывает все маршруты, наконец решит мою настоящую проблему. Но мой пост был о волшебной функции с параметром запроса "состояние"... - person Karbos 538; 10.01.2017
comment
Что вообще означает, что маршрутизатор автоматически переходит в данное состояние? Как выглядят ваши маршруты? - person Günter Zöchbauer; 10.01.2017
comment
Я использую хеш-стратегию. маршрутизатор автоматически переходит в заданное состояние, т.е. на заданный маршрут - person Karbos 538; 10.01.2017
comment
Понятия не имею, что ты имеешь в виду. Одной из основных особенностей маршрутизатора является возможность создания закладок для состояний приложений. Если вы нажмете на закладку для определенного маршрута или введете URL-адрес напрямую, маршрутизатор перейдет к этому маршруту. Это то, что вы имеете в виду? - person Günter Zöchbauer; 10.01.2017
comment
Хорошо, я был неправ, мой хэш не был закодирован, поэтому я был в проблеме, которую вы указали. Спасибо - person Karbos 538; 10.01.2017