Недавно я заметил, что при использовании модуля ngRoute в приложении AngularJS маршрут содержит #! в URL-адресе, который ранее был только #.
Например, www.webiste.com/#/login становится www.website.com/#!/login
Мне нужно включить html5Mode, а также отключить requireBase, который удаляет базу в целом с помощью кода,
$locationProvider.html5Mode({
enabled: true,
requireBase: false
});
и URL изменяется на www.website.com/login, который отлично работает, но вводит в заблуждение и не похож на Angular URL-адреса SPA.
Если я не включил html5Mode, URL-адрес закодирован, и я не могу обойти его. Таким образом, www.website.com/#/login становится www.website.com/#!/#%2Flogin (обратите внимание, что более поздняя / кодируется как %2F).
Это изменение, внесенное разработчиками для определенной цели? Что это меняет? Какие изменения необходимо внести в мое приложение, чтобы он работал? Я что-то делаю неправильно?
Проблема Github: https://github.com/angular/angular.js/issues/15547