关于vue-cli脚手架打包后获取本地大图片或大文件报404的解决办法
最近帮公司同事看一个比较棘手的问题,查了好久终于找到了解决方案,记录下来方便以后碰到这个问题的小伙伴参考。
是这样的,这个项目用vue-cli脚手架构建的项目,使用了 element-ui 中的字体图标,打包之后出现element-icons.ttf
报404的错误。
文章图片
错误图片
查看网上的解决办法都是在
webpack
中配置,但是该项目没有配置专门的
wabpack
,只有一个
vue.config.js
文件,查了好久没有解决,突然想到vue官方有提供vue-cli脚手架配置的说明,具体请看 vue-cli webpack相关配置 。vue将小于4kb的文件默认为内联文件,不会向服务器发送请求,可以通过 chainWebpack 调整内联文件的大小限制。例如,下列代码会将其限制设置为 10kb:
// vue.config.js
module.exports = {
chainWebpack: config => {
config.module
.rule('images')
.use('url-loader')
.loader('url-loader')
.tap(options => Object.assign(options, { limit: 10240 }))
}
}
【关于vue-cli脚手架打包后获取本地大图片或大文件报404的解决办法】这其实解决了我们项目中引用大图片,如高清背景图,打包后报错的问题,只要将
limit
后面的数字相应的改大就可以了,当然,太大的图片还是推荐从服务器获取。看了一下element字体文件的大小为10k多一点,仿照这个将config.module
改造一下:module.exports = {
chainWebpack: config => {
config.module
.rule('fonts')
.test(/\.(woff2?|eot|ttf|otf)(\?.*)?$/)
.use('url-loader')
.loader('url-loader')
.tap(options => Object.assign(options, { limit: 20480 }))
}
}
顺利解决!所以,当百度、google都找不到答案的时候,不妨去官网看看,说不定就可以解决。祝你顺利解决问题哦~~~~
推荐阅读
- vue-cli|vue-cli 3.x vue.config.js 配置
- 关于QueryWrapper|关于QueryWrapper,实现MybatisPlus多表关联查询方式
- 四首关于旅行记忆的外文歌曲
- 醒不来的梦
- 关于自我为中心的一点感想
- 「按键精灵安卓版」关于全分辨率脚本的一些理解(非游戏app)
- 关于Ruby的杂想
- 关于读书的思考
- 关于this的一些问题(1)
- 《声之形》