У меня есть этот маршрутизатор:Угловое 2 маршрутизации добавляет якорь в IE9
...
import { Router, Routes, RouterModule } from '@angular/router';
...
const routes:Routes = [
{ path:'', redirectTo:'home', pathMatch:'full'},
{ path:'home', component: HomeComponent},
...
]
И навигация через
router.navigateByUrl('/home');
Она работает довольно отлично во всех браузерах, но IE9.
Он добавляет к текущему URL в #, так что если я перейти к localhost
, он отображает HomeComponent
нормально, но URL является localhost/#/home
И если я вручную добавить localhost/home
он идет к localhost/home/#/home
и не
Can» t найти что-либо в вопросах GitHub (некоторые похожие вопросы, но не то же самое), и я не могу самостоятельно найти проблему. Любые подсказки?
Каким должен быть обходной путь? Хейш-навигации для всех? Разная навигация для IE9? – sailens
Не поддерживайте IE9 мой ответ по умолчанию. Но эй, я не знаю твоей ситуации :) Я не знаю об обходном пути, но можно сказать, что ты справляешься с этим на своем веб-сервере. Проверьте, не IE9, а затем добавить хэш перед URL. Но, возможно, есть лучший способ. Вы установили базовый href в '/'? – PierreDuc
К сожалению, IE9 является обязательным. base ref правильно установлен на/ – sailens