当前位置: 首页 > Web前端 > HTML5

MuseUI遇到的坑

时间:2023-04-05 00:12:58 HTML5

写在前面:本人只是一个前端小白,文中提到的可能有不足之处,仅供参考。如有不完善之处,欢迎大家指出,希望对大家有所帮助!故事的背景是这样的。最近在做一个Vue项目,使用了MuseUI组件库。一开始,考虑使用MaterialDesign来设计规格是一种乐趣,但事情并没有永远持续下去。..项目本身需要使用MaterialIcon字体包,但是由于一些众所周知的原因,国内网络无法访问部分外网。于是采用了本地化部署字体的方法。下载MaterialIcons字体包,放在static静态文件夹下,从index.html导入。问题来了:情况一:在系统首页(路由为:“/”),可以正常读取字体包,所以页面渲染成功,没有问题(图1)。情况二:在进入其他路线时(如路线:“/trip/history”,历史旅行),刚进入的页面也渲染成功。此时重新加载页面时,出现错误,找不到字体图标,只显示字体图标的名称(图2)。图1系统主页图2历史行程这个bug困扰了我一个多月。一时间,我很无奈,无法解决,甚至想过放弃使用MuseUI。直到今天才发现是什么问题,然后修复了它。按照官方文档的方法引入(这里终于解决了,是退格键的问题)://index.html这个Bug是console中的意外警告:ResourceinterpretedasStylesheetbuttransferredwithMIMEtypetext/html:"URL(thisURLisaboutthepathoftheMaterialIcon)",才意识到网址错误。首页历史行程(一)经过仔细比对路径,发现了一个问题。首页RequsetURL是正确的,但是历史行程页面是错误的。然后锁定index.html中引入MaterialIcon的标签。(2)和官方文档对比了一下,好像没有错误。由于index.html和static文件夹在同一个目录下,所以href="./static/fonts/material-icons/material-icons.css"应该是正确的,官方文档也是这样写的,但实际上确实出错了。于是……我把路径改成项目根目录,然后就可以了,如下。//index.html确认本地没有问题后,再将项目打包放到云端服务器查看是否正常是否读取静态资源,发现正常。回想整个过程,主要是没发现不同页面下的RequestURL不一致,其中一个是不正确的。发现这个问题,事情就好办了。当然,还有一个问题我不太明白:为什么不会起作用(前面一个-结束白问?),稍后再去GitHub提交一个Issue给大佬查明原因,然后更新文章。由于这个bug困扰了我太久,所以写一篇文章记录一下。最后还是那句话:本人只是一个前端小白,有不足之处请指出!