#angular #angular-ui-router
#angular #angular-ui-router
Вопрос:
Я создаю веб-сайт, который имеет Angular (2) SPA в качестве компонента, используя ui-router-ng2. Я хотел бы сделать что-то вроде:
- http://example.com / -> Домашняя страница по умолчанию (статическая) со ссылкой на SPA
- http://example.com/app -> СПА-ЦЕНТР
- Что-нибудь еще -> Статические страницы
Таким образом, маршрут «foo.bar» должен иметь URL-адрес «/app / #/ foo / bar». Мой сервер (написанный на Go) правильно обрабатывает маршрутизацию, но SPA заменяет адреса путями относительно корня вместо «/ app» («/ #/ foo / bar» вместо «/ app / #/ foo / bar»). Как мне сообщить Angular, где я хочу, чтобы SPA размещался?
Ответ №1:
Попробуйте установить базовый тег в head :
<base href="http://your-app/root-angular-path/">
Или вы можете установить его непосредственно в своем модуле приложения :
// >= Angular2 RC.6
@NgModule({
declarations: [AppComponent],
imports: [RouterModule],
providers: [
{provide: APP_BASE_HREF, useValue : 'http://my-app/angular/' },
{provide: LocationStrategy, useClass: HashLocationStrategy} },
]
]);