我正在使用角度5.2.11。我有一个品牌服务,可以将不同的URL发送到网站图标到应用程序。我在页面加载时设置了图标,例如:
const favicon = document.createElement('link');
favicon.setAttribute('type', 'image/x-icon');
favicon.setAttribute('rel', 'icon');
favicon.setAttribute('href', '//someUrlWherePlacedFavicon');
document.head.appendChild(favicon);
在IE11中使用路由服务更改页面时,从站点“ /favicon.ico”的根目录设置了favicon。甚至从控制台更改不起作用。但是,如果重新加载页面,则收藏夹图标开始正常更改。
每次页面更改时,我都尝试替换favicon链接,但是它不起作用。 我想这是角度路由或IE11的错误。有想法吗?
答案 0 :(得分:0)
您可以使用组件内部的DOCUMENT类来设置动态收藏夹图标链接。
在index.html中设置链接标记
<link id="appFavicon" rel="icon" type="image/x-icon" href="favicon.ico">
以及代码导入中的某处
import { Component, Inject } from '@angular/core';
import { DOCUMENT } from '@angular/platform-browser';
constructor(@Inject(DOCUMENT) private _document: HTMLDocument) {}
this._document.getElementById('appFavicon').setAttribute('href', '/your/icon/path.ico');