Изменить URL моего angular приложения, используя HREF в том же домене - PullRequest
0 голосов
/ 04 марта 2020

Можно ли изменить URL, используя href в html? Если я нажимаю <a href="http://localhost:4200/products.html>Products</a> из файла index.html. URL изменяется 1 секунда и go возвращается к http://localhost:4200/

Даже мои src/app/home/home.component.html имеют <a href="http://localhost:4200/products.html>Products</a> все еще возвращаются к http://localhost:4200/, когда я щелкнул ссылку.

Я много искал об этой проблеме, но все предложения касаются маршрутизации. Но я хочу обновить sh браузер, нажав. Если href не представляется возможным, пожалуйста, дайте мне любую идею, чтобы решить эту проблему. Пожалуйста, помогите мне об этой проблеме. Заранее спасибо!

Ответы [ 2 ]

0 голосов
/ 04 марта 2020

где вы разместили свои продукты. html файл, потому что я думаю, что эта страница не обслуживается в этом месте (localhost: 4200 / products. html). Я предполагаю, что страница продуктов является angular компонентом, если это так, то вы можете просто реализовать событие click для тега, а при щелчке вы можете перейти пользователя к этому маршруту и ​​обновить sh приложение, используя следующий код

this.router.navigateByUrl('products').then(() => {
window.location.reload();
})

, если он не является компонентом angular, вы должны подтвердить, что эта страница обслуживается на сервере, откуда вы ее вызываете, просто напишите ссылку

localhost: 4200 / products. html

в браузере, если эта страница не отображается, то проблема в том, как вы обслуживаете эту страницу на сервере, поскольку это означает, что страница не найдена на этот путь. и вы не можете вызывать html страницы так, как вы делаете в localhost. просто щелкните правой кнопкой мыши по продукту. html файл, где бы он ни находился на вашем компьютере, и нажмите на кнопку «Открыть» с опцией, выберите браузер и откройте файл в браузере, и вы увидите URL-адрес в строке поиска браузера, просто скопируйте URL-адрес. и вставьте его в href = "/ paste copied_url here /", и теперь он должен открыть файл products. html. Надеюсь это поможет. если у вас есть какие-либо вопросы, просто прокомментируйте.

0 голосов
/ 04 марта 2020

Если вы используете режим HTML5 в сервисе $location, вы можете ссылаться на страницу относительно root приложения:

<a href="/products.html">Products</a>

Это останавливает $location Сервис от переписывания HREF. Подробнее: angular документы

...