vue-cli+webpack项目打包到服务器后,ttf字体找不到的解决操作


Posted in Javascript onAugust 28, 2020

更改 build/utils.js 文件中 ExtractTextPlugin 插件的options 配置:

if (options.extract) {
 return ExtractTextPlugin.extract({
 use: loaders,
 publicPath: '../../',   // 注意配置这一部分,根据目录结构自由调整
 fallback: 'vue-style-loader'
 })
} else {
 return ['vue-style-loader'].concat(loaders)
}

补充知识:webpack打包运行vue项目后找不到.ttf及.woff文件,或者路径报错

webpack.base.config 文件中 ,有的人可能在utils.js中

修改前:

{
 test: /\.css$/,
 use: ExtractTextPlugin.extract({
 use: [‘css-loader?minimize‘, ‘autoprefixer-loader‘],
 fallback: ‘style-loader‘
 })
},
{
 test: /\.less$/,
 use: ExtractTextPlugin.extract({
 use: [‘css-loader?minimize‘,‘autoprefixer-loader‘, ‘less-loader‘],
 fallback: ‘style-loader‘
 }),
},

修改后:

{
 test: /\.css$/,
 use: ExtractTextPlugin.extract({
 use: [‘css-loader?minimize‘, ‘autoprefixer-loader‘],
 publicPath:‘../../‘,
 fallback: ‘style-loader‘
 })
},
{
 test: /\.less$/,
 use: ExtractTextPlugin.extract({
 use: [‘css-loader?minimize‘,‘autoprefixer-loader‘, ‘less-loader‘],
 publicPath:‘../../‘,
 fallback: ‘style-loader‘
 }),
},
{
  test: /\.(woff2?|eot|ttf|otf)(\?.*)?$/,
  loader: 'url-loader',
  options: {
   limit: 10000,
   name: utils.assetsPath('fonts/[name].[hash:7].[ext]')
  }
}

针对ttf/woff结尾的文件使用url-loader加载的,要寻找到加载样式的loader改变打包路径。

就是再加载css的时候,将publicPath路径更改为“../../”,也根据自己的目录结构自定义。这样打包后的项目才能找到相对应的应用路径,为什么要这样改呢,是因为我们的路径要按照打包后的层级结构去找,不是按原本项目本身,还有一点相对路径有时候找不到,所以才要改成这种绝对路径,在static下再去寻找次。

以上这篇vue-cli+webpack项目打包到服务器后,ttf字体找不到的解决操作就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
jquery基础教程之deferred对象使用方法
Jan 22 Javascript
jQuery实现单击按钮遮罩弹出对话框(仿天猫的删除对话框)
Apr 10 Javascript
Javascript 是你的高阶函数(高级应用)
Jun 15 Javascript
javascript实现下班倒计时效果的方法(可桌面通知)
Jul 10 Javascript
js实现跨域的几种方法汇总(图片ping、JSONP和CORS)
Oct 25 Javascript
详细解读Jquery各Ajax函数($.get(),$.post(),$.ajax(),$.getJSON())
Aug 15 Javascript
JavaScript第一篇之实现按钮全选、功能
Aug 21 Javascript
js学习总结_基于数据类型检测的四种方式(必看)
Jul 04 Javascript
JS实现图片放大镜插件详解
Nov 06 Javascript
Vuejs中使用markdown服务器端渲染的示例
Nov 22 Javascript
vue项目使用微信公众号支付总结及遇到的坑
Oct 23 Javascript
vue中使用mockjs配置和使用方式
Apr 06 Vue.js
vue select 获取value和lable操作
Aug 28 #Javascript
VSCode 添加自定义注释的方法(附带红色警戒经典注释风格)
Aug 27 #Javascript
js实现弹幕飞机效果
Aug 27 #Javascript
jQuery编写QQ简易聊天框
Aug 27 #jQuery
jQuery实现简单QQ聊天框
Aug 27 #jQuery
js实现前端界面导航栏下拉列表
Aug 27 #Javascript
selenium 反爬虫之跳过淘宝滑块验证功能的实现代码
Aug 27 #Javascript
You might like
mac环境中使用brew安装php5.5.15
2014/08/18 PHP
PHP利用header跳转失效的解决方法
2014/10/24 PHP
PHP内存缓存功能memcached示例
2016/10/19 PHP
JS弹出层的显示与隐藏示例代码
2013/12/27 Javascript
在Linux上用forever实现Node.js项目自启动
2014/07/09 Javascript
js简单实现Select互换数据的方法
2015/08/17 Javascript
js带点自动图片轮播幻灯片特效代码分享
2015/09/07 Javascript
基于javascript实现彩票随机数生成(升级版)
2020/04/17 Javascript
10个JavaScript中易犯小错误
2016/02/14 Javascript
jQuery on()方法绑定动态元素的点击事件无响应的解决办法
2016/07/07 Javascript
一个例子轻松学会Vue.js
2017/01/02 Javascript
ES6扩展运算符的用途实例详解
2017/08/20 Javascript
jQuery动态添加li标签并添加属性和绑定事件方法
2018/02/24 jQuery
详解小程序如何避免多次点击,重复触发事件
2019/04/08 Javascript
jQuery实现高级检索功能
2019/05/28 jQuery
解决layer图标icon不加载的问题
2019/09/04 Javascript
vscode中的vue项目报错Property ‘xxx‘ does not exist on type ‘CombinedVueInstance<{ readyOnly...Vetur(2339)
2020/09/11 Javascript
node中短信api实现验证码登录的示例代码
2021/01/20 Javascript
将Python代码嵌入C++程序进行编写的实例
2015/07/31 Python
浅谈python多线程和队列管理shell程序
2015/08/04 Python
python黑魔法之参数传递
2016/02/12 Python
使用python的pexpect模块,实现远程免密登录的示例
2019/02/14 Python
Django2 连接MySQL及model测试实例分析
2019/12/10 Python
Python3中configparser模块读写ini文件并解析配置的用法详解
2020/02/18 Python
CSS3自定义滚动条样式的示例代码
2017/08/21 HTML / CSS
HTML5 Canvas 实现K线图的示例代码
2019/12/23 HTML / CSS
英国家喻户晓的折扣商场:TK Maxx
2017/05/26 全球购物
世界上最好的儿童品牌:AlexandAlexa
2018/01/27 全球购物
欧洲当代手工玻璃和瓷器的领先品牌:LSA International
2018/06/03 全球购物
饮料业务员岗位职责
2013/12/15 职场文书
《花瓣飘香》教学反思
2014/04/15 职场文书
超市商业计划书
2014/05/04 职场文书
学籍证明模板
2015/06/18 职场文书
庆祝教师节主持词
2015/07/06 职场文书
法制主题班会教案
2015/08/13 职场文书
话题作文之生命的旋律
2019/12/17 职场文书