如何在 vue.js webpack 项目上正确设置 favicon.ico?

新手上路,请多包涵

我使用 vue-cli 创建了一个 vue webpack 项目。

 vue init webpack myproject

然后在 dev 模式下运行项目:

 npm run dev

我收到了这个错误:

加载资源失败:服务器响应状态为 404 (Not Found) http://localhost:8080/favicon.ico

那么在 webpack 里面,如何正确导入 favicon.ico 呢?

原文由 Alfred Huang 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 1k
2 个回答

查看 webpack 模板的项目结构: https ://vuejs-templates.github.io/webpack/structure.html

请注意,有一个静态文件夹,以及 node_modulessrc 等。

如果您将一些图像放入 static 文件夹中,例如 favicon.png ,它将在 http://localhost:8080/static/favicon.png

这是静态资产的文档: https ://vuejs-templates.github.io/webpack/static.html

For your favicon issue, you can put a favicon.ico or favicon.png into the static folder and refer in the <head> of your index.html如下:

 <head>
    <meta charset="utf-8">
    <link rel="shortcut icon" type="image/png" href="/static/favicon.png"/>
    <title>My Vue.js app</title>
    ...
</head>

如果您没有在 favicon.ico 中定义 index.html ,则浏览器将从网站根目录请求一个网站图标(默认行为)。如果您如上所述指定网站图标,您将不会再看到 404。 favicon 也将开始显示在您的浏览器选项卡中。

作为旁注,这就是我更喜欢 PNG 而不是 ICO 文件的原因:

favicon.png 与 favicon.ico - 为什么我应该使用 PNG 而不是 ICO?

原文由 Mani 发布,翻译遵循 CC BY-SA 3.0 许可协议

出于某种原因,在将默认 favicon.ico 文件转换为 favicon.png 并将其重命名为 favicon-xyz.png -f45928 文件之前,上述解决方案对我不起作用在 /public 文件夹中)并编辑 index.html 文件如下:

 <head>
    <meta charset="utf-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <link rel="icon" href="<%= BASE_URL %>favicon-xyz.png">
    .
    .
    .
</head>

可能对某人有用。

原文由 tjurkan 发布,翻译遵循 CC BY-SA 4.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题
logo
Stack Overflow 翻译
子站问答
访问
宣传栏