Как не удалить "index.html"? - PullRequest
       12

Как не удалить "index.html"?

0 голосов
/ 23 октября 2018

У меня проблема с моим приложением Angular 6.

URL моего приложения: my-server / my-app / index.html.

Когда приложение загружено, URL-адресавтоматически переписывается без "index.html".Это большая проблема, потому что глубокие ссылки не могут быть использованы.

Пример: my-server / my-app / deep-route-1/6

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

Как решить эту проблему?

Вот мое объявление маршрутов:

const routes: Routes = [
  //{ path: '', redirectTo: '', pathMatch: 'full' },
  { path: 'simulation/:id', component: SimulateurComponent, resolve: { vm: SimulationResolver } },
  { path: 'parametres/:nedt', component: ParamsComponent, resolve: { params: ParamsResolver } }
]

@NgModule({
  imports: [ RouterModule.forRoot(routes) ],
  exports: [ RouterModule ]
})

РЕДАКТИРОВАТЬ

После поисков кажется, что это новая особенность Angluar.io.Angular 6 использует «html 5 urls», поэтому он автоматически удаляет «index.html» в URL.

Чтобы противостоять этому, 2 решения: - сложное (переписать URL) - нет времени для его тестирования -Все просто: используйте технику angular.js:

@NgModule({
  imports: [ RouterModule.forRoot(routes, { useHash: true }) ],
  exports: [ RouterModule ]
})
export class AppRoutingModule {}

"usehash" - это магия;)

...