Угловая маршрутизация работает в режиме разработки, но не при запуске в качестве приложения для весенней загрузки

Я новичок в angular, использую angular 10.

В "app-routing.module.ts" я вижу ниже конфигурацию, чтобы включить "#" в URL-адресе

      imports: [ RouterModule.forRoot(routes, { useHash: true }) ]

Проблема: если я запускаю приложение через код vs на сервере разработки (порт 4200), оно перенаправляет URL-адрес «http: // localhost:8081 / auth» на «http: // localhost:8081 / # / auth», а страница загрузка успешно.

но если я запускаю приложение через intellij(порт 8080) в качестве приложения Springboot, оно перенаправляет на «http: // localhost:8081 / auth» с 404

может кто-нибудь помочь, как решить эту проблему?

1 ответ

Вы не запускаете его как приложение для весенней загрузки. Spring boot запускает сервер tomcat, на котором размещается ваш интерфейс.

Обычно вы упаковываете скомпилированное приложение angular в каталог ресурсов проекта загрузки Spring. При запуске Tomcat обрабатывает их как статические файлы.

Убедитесь, что фактические статические файлы, которые существуют в папке ресурсов, являются правильными (правильно скомпилированные файлы из вашей последней версии angular)

Обычно встроенное приложение angular хранится внутри /src/main/resources/static

Intelij, однако, загрузит все приложение из target/.... Поэтому проверьте, существуют ли ваши статические угловые файлы.

Другие вопросы по тегам