Подтвердить что ты не робот

IE favicon исчез при навигации по другой странице в приложении angular

Я нашел проблему с приложением angular. У меня есть настройка поставщика местоположения, чтобы использовать html5Mode true:

$locationProvider.html5Mode(true);

Я заметил, что значок исчезает при навигации между страницами. Я использую режим документа Edge в IE11.

Кто-нибудь тоже столкнулся с этим?

Спасибо

4b9b3361

Ответ 1

Думал, что стоит добавить мои результаты здесь...

Сначала у меня была одна и та же проблема, я не мог заставить значок оставаться на странице при переходе с домашней страницы root. Я попробовал Shaun ответить, и это не сработало, поэтому я снова посмотрел в Интернете и обнаружил, что во всех современных браузерах вы можете использовать PNG в качестве значка по умолчанию, поэтому я пробовал это, и он работал у меня в последнем Chrome, последнем Firefox и IE11 через localhost, а затем в Edge после публикации на моем веб-сервере.

Я надеюсь, что это поможет кому-то еще, у кого была такая же проблема.

Ответ 2

Не уверен, что это сработает для вас или нет.

Этот код предполагает, что у вас есть jQuery, а также angularjs (а не только jqlite). Эквивалент в чистом javascript был бы возможен (хотя и длиннее).

angular.module('app', [])
.run(function ($rootScope, $location) {

  $rootScope.$on('$stateChangeStart', function (event, toState, toParams, fromState, fromParams) {

    // bug fix: reset favicon path
    var favType = "image/x-icon"
    favLink = $('link[type="' + favType + '"]').remove().attr("href");
    $('<link href="' + favLink + '" rel="shortcut icon" type="' + favType + '" />').appendTo('head');

  })

});