项目是vue2,问一些使用iconfont的过程中遇到的问题:
1.这里的文件应该放在vue项目的哪个文件夹下?public还是assets,为什么?
2.这个文件夹里的所有文件如果放在assets文件夹下,npm run后报这样一个错误,请问原因是什么,如何解决?
3.网上有在index.html里引用iconfont.css的,有在main.js里引用iconfont.css的,请问有什么区别,哪种才是最优解?
谢谢
项目是vue2,问一些使用iconfont的过程中遇到的问题:
1.这里的文件应该放在vue项目的哪个文件夹下?public还是assets,为什么?
2.这个文件夹里的所有文件如果放在assets文件夹下,npm run后报这样一个错误,请问原因是什么,如何解决?
3.网上有在index.html里引用iconfont.css的,有在main.js里引用iconfont.css的,请问有什么区别,哪种才是最优解?
谢谢
一般来说,在 Vue2 中,可以将阿里 iconfont 下载的字体文件夹放在 src/assets
目录下。
关于在 Vue2 项目中引入阿里 iconfont 的方式,可以在 main.js
或者是 index.html
文件中引入 iconfont.css 文件。两种方式都是可行的,只是引入方式略有不同:
index.html
中引入样式表:<head>
<link rel="stylesheet" href="<%= BASE_URL %>assets/iconfont/iconfont.css">
</head>
其中 <%= BASE_URL %>
是 Vue CLI 生成的 index.html 文件中的变量,用于在生产环境中确定应用程序的基本 URL。开发环境中可以直接使用 '/'。
这种方式的好处是它可以在项目启动时就加载字体文件和样式表,无需再在其他组件中单独引入。但如果您的应用程序包含大量图标样式,则这种方法可能会导致样式表过于庞大,影响页面性能。
在 main.js
中引入样式表:
// 引入阿里 iconfont 样式表
import '@/assets/iconfont/iconfont.css';
这种方式的好处是使得您的应用程序具有更好的可维护性,并且可以将样式表代码拆分到自己的文件中,便于管理和共享。但如果您大量使用图标样式,可能会导致每个组件都需要单独引入样式表,显得非常冗长。
你的报错最好提供一下使用方式, 以及代码
10 回答11.1k 阅读
6 回答3k 阅读
5 回答4.8k 阅读✓ 已解决
4 回答3k 阅读✓ 已解决
2 回答2.6k 阅读✓ 已解决
3 回答5.1k 阅读✓ 已解决
3 回答1.8k 阅读✓ 已解决
放在assets或者static包下都可以,都将作为静态资源在install的时候被引用。
在index.html,main.js里引用也都可以,加载顺序和编码习惯决定放在哪里。
目前我遇到的项目里,放在main.js里进行资源引用的占90%,一个vue项目的页面很可能在组件里去完成,不一定在index.html里,使组件内尽量少的引用公共资源,可让代码简洁且具备可移植性更高。