umi 的项目中如何修改 favicon

浏览器在解析html文件时会将类型为icon的link标签引用的图片作为网页的favicon,也就是网站标签左上角的小图标。

有两种方法加入link标签:

1. 在document.ejs中使用link标签


  

umi 约定如果存在 src/document.ejs 文件,则将其作为html模板。

2. 在umi配置文件里配置links

links: [{ rel: 'icon', href: '/img/favicon.ico' }]

 

但是!注意坑:umi是不会去编译html文件的,也就是说这里的href如果写的是开发时的图片路径,umi是不会主动去找到图片并给你打包进输出文件里的。

那么像这样在html里引用的静态资源,不像js里的资源可以被webpack解析打包输出,我们要怎么搞到输出文件里去呢?

此时就要用到umi的约定:“public 目录:此目录下所有文件会被 copy 到输出路径”。新建一个 /public目录把图标放进去,可以在输出文件的根目录里访问到。

比如网页放在localhost:8000上,这里的href="favicon.ico" 就会往 localhost:8000/favicon.ico 发送Get资源请求,即项目输出文件的根目录。换句话说,如果你的资源放在/public/img下,那么href应该写"img/favicon.ico"

 

你可能感兴趣的:(爬坑,umi)