next.js如何修改favicon.ico

next.js如何修改favicon.ico,第1张

目前vue-cli搭建的vue项目里面已经有了一个static文件夹,存放静态文件。

favicon图片放到该文件夹下。

然后再index.html中添加:

1

<link rel="shortcut icon" type="image/x-icon" href="static/favicon.ico" rel="external nofollow" >

然后刷新浏览器,就会更新。

如果没有效果,则查看你的build文件夹下:build/webpack.dev.conf.js中。(到这个步骤之前我的是出现了,并且正常显示,如果不显示,则配置一下吧。)

123456

new HtmlWebpackPlugin({ filename: 'index.html', template: 'index.html', inject: true, favicon:'../stastic/favicon.ico' }),

到这个时候,页面的favicon已经可以正常显示了。

然而,如何从服务器动态获取图片呢,这样以来就可以像上传文件一样,随意更换favicon。先看一下stackoverflow上的回答

1234567

(function() { var link = document.querySelector("link[rel*='icon']") || document.createElement('link') link.type = 'image/x-icon' link.rel = 'shortcut icon' link.href = 'http://www.stackoverflow.com/favicon.ico' document.getElementsByTagName('head')[0].appendChild(link)})()

动态创建link标签,然后添加元素。我目前写的项目是从前端上传到服务器的图片,关于如何上传图片,额,粘贴一下代码吧。

12345678910111213141516171819202122232425262728293031323334353637

logoFirstChange(val) {let that = this let Fr = new FileReader let file = val.target.files[0]//获取需要更换的img的id,我这里更换的图片比较多,并且方法都一样,所以写同样的方法里面了。let img = document.getElementById(val.srcElement.name.split('|')[0]) Fr.readAsDataURL(file) Fr.onloadend = function () { img.src = this.result } let fd = new FormData()//addend('参数名','参数值'),参数名需要和后端对应fd.append('InputFile', file) fd.append('logo_id', val.srcElement.name.split('|')[1])//vue项目中为了方便更改一下axios原型链,其实就是发送一个axios请求。这里正常的axios就行,不用谢Blob类型,没什么用,我当时是为了测试一下这个类型。that.Axios.post(that.prefix + '/yr_logo/logo_update/',fd,new Blob([fd], { type: 'multipart/form-data' })) .then(function (res) { if (res.data.status == 1) { util.notification('success', '成功', res.data.success_msg) } else { util.notification('error', '失败', res.data.error_msg) } img.value = ''}) .catch(function (err) { console.log(err)})//上传之后修改了一下axios的原型链,因为全局其他页面都需要。(这里忽略)that.Axios.defaults.headers.post['Content-Type'] = 'application/x-www-form-urlencoded' that.Axios.defaults.transformRequest = function (data) { let ret = ''for (let it in data) { ret += encodeURIComponent(it) + '=' + encodeURIComponent(data[it]) + '&' } return ret.slice(0, ret.length - 1) } }

方法一:

直接在站点根目录下放入名为:favicon.ico 的图标文件(必须要为 ICO 文件,BMP 及其他格式的图片文件不行)。还有将 favicon.ico 中的 favicon 命名为你网站域名的名称也可以,例如:你网站的域名为:xll.com,你可以将该 ICO 文件命名为:xll.ico 。

方法二:

1. 在网页的 ... 区加入代码:,如果用这一种方法的话,其中 ICO 文件的文件名就不一定要用 favicon.ico了,可以用任意的名字来命名,如:aoul.ico,你甚至可以使每一个目录下的每一个网页文件的IE地址栏图标都不同,但前提是 必须做到图标文件的链接地址要正确。还有,在 ... 区加入代码:,就可以在收藏夹中显示你网页链接的自定义图标。

2. 在网站首页的源文件 之间插入下面的斜体部分代码 ……

3.动态ico图标的实现方法,先把做好的gif动态图标命名为favico.gif 之间加上。 1、将ico文件放在网站根目录

2、在网站页面中head标签内添加

<link rel="shortcut icon" href="favicon.ico" type="image/x-icon" />即可。


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/bake/7978166.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-12
下一篇2023-04-12

发表评论

登录后才能评论

评论列表(0条)

    保存