В настоящее время я работаю над проектом Angular2 с использованием TypeScript, и я не могу заставить HashLocationStrategy работать. Я переопределить LocationStrategy в самозагрузкой так, как это описано здесь: https://angular.io/docs/ts/latest/guide/router.htmlHashLocationStrategy не работает должным образом
import {bootstrap} from 'angular2/platform/browser';
import {ROUTER_PROVIDERS} from 'angular2/router';
import {AppComponent} from './app.component';
// Add these symbols to override the `LocationStrategy`
import {provide} from 'angular2/core';
import {LocationStrategy,
HashLocationStrategy} from 'angular2/router';
bootstrap(AppComponent, [
ROUTER_PROVIDERS,
provide(LocationStrategy,
{useClass: HashLocationStrategy})
]);
Я создал plunker, чтобы продемонстрировать мою проблему здесь: https://plnkr.co/edit/YE5w4iky53SHRi211lqX?p=preview
Кто-нибудь еще сталкивался этот вопрос? Разве я неправильно понял это или я что-то упускаю?
Редактировать: Ожидаемый результат будет заключаться в том, что маршрутизация использует хеши в URL-адресе. В примере, который должен создать такой URL: .../#/fubar, вместо этого я получаю .../fubar
Чтобы увидеть сгенерированные URL-адреса, вам нужно будет запустить плункер в отдельном окне (синий полноэкранная кнопка)
Что значит «не может получить ... работать» означает? Каков ожидаемый уровень? Каково фактическое поведение? Любое сообщение об ошибке? –
Для меня ваш plunkr работает. Единственный комментарий, который у меня будет, это то, что вы дважды определили свои «ROUTER_PROVIDERS» при загрузке и в своем компоненте ... –