Muse UI遇到的坑

简介: Muse UI遇到的坑

前言


文中若有错误,欢迎指正,希望对你有帮助!


故事背景是这样的,最近做一个Vue项目,使用到 Muse UI 组件库。刚开始时想着能用 Material Design 设计规范是一件非常开心的事情,然后事情并不会一直美好下去。。。


正文


项目本身需要用到 Material Icon 字体包,但由于一些众所周知的原因,国内网络无法访问一些外网。于是采用了本地化部署字体的方法。下载 Material Icons 字体包,然后放到 static 静态文件夹中,再从 index.html 引入。

问题来了:

  1. 在系统首页(路由是:"/"),可以正常读取到字体包,所以页面渲染成功,没问题的(图一)。
  2. 当进入其他路由(例如路由:"/trip/history",历史行程),刚进入页面同样是渲染成功。当此时对页面重新加载时,就会出现错误,字体图标找不到,只显示了的字体图标名称(图二)。

0.webp.jpg

图一 系统首页


11.webp.jpg

图二 历史行程

对于这个 Bug,大概困扰了我一个多月。一度很无奈解决不了,甚至想过放弃使用 Muse UI。直到今天才发现问题所在,然后就解决了。


按照官方文档的方法引入(最后就在这里解决的,就是一个退格键的事):

// index.html
<link rel="stylesheet" href="./static/fonts/material-icons/material-icons.css"/>

这个 Bug 是在控制台偶然 Warning:Resource interpreted as Stylesheet but transferred with MIME type text/html: "URL(这个URL是关于 Material Icon 的路径)",才意识到 URL 错了。


12.webp.jpg

首页


13.webp.jpg

历史行程

  1. 仔细对比路径之后发现了问题,首页的 Requset URL 是正确的,而历史行程页面是错误的。然后就锁定到index.html中引入 Material Icon 的<link/>标签。
  2. 跟官方文档对比后,好像没发现有错。由于 index.html 和  static 文件夹是同级目录下的,所以 href="./static/fonts/material-icons/material-icons.css" 按道理应该是没错的,官方文档也这么写,但实际上确实出错了。


于是乎......我把路径改成项目根目录,然后就行了,如下。

// index.html
<link rel="stylesheet" href="/static/fonts/material-icons/material-icons.css">


在本地确定没问题后,再打包项目放到云服务器上,看看能否读取到静态资源,发现也正常。


回想整个过程,最主要是因为没发现在不同页面下的 Request URL 不一致,且其中一个是不正确的。发现了这个问题,事情就好办了。当然还有个问题没明白:为什么 <link rel="stylesheet" href="./static/fonts/material-icons/material-icons.css"> 会不行(一个前端小白的疑问?),迟点再上 GitHub 向大佬提个 Issue 找找原因,到时在更新一下文章。

目录
相关文章
|
关系型数据库 MySQL Linux
Centos7 环境使用 Docker 安装 Mysql 服务详解
Centos7 环境使用 Docker 安装 Mysql 服务详解
2052 0
Centos7 环境使用 Docker 安装 Mysql 服务详解
|
3月前
|
数据可视化 前端开发 网络安全
使用应用镜像搭建翼龙面板
本实验介绍了翼龙面板是一个开源的,使用 PHP、React和Go构建的开源游戏服务器管理面板。支持玩家快速搭建百款热门游戏的服务端,并且提供了可视化的游戏服管理。本文主要介绍如何通过应用镜像搭建并使用翼龙面板。
使用应用镜像搭建翼龙面板
Vue2滑动输入条(Slider)
这是一个基于 Vue3 的滑动输入条(Slider)组件,提供了丰富的自定义选项,如最小值、最大值、初始值、宽度、禁用状态及双滑块模式等。用户可通过拖动滑块或点击输入条调整数值。代码示例展示了如何创建组件及在页面中引入使用。包含单滑块与双滑块模式的效果图。
399 2
Vue2滑动输入条(Slider)
|
6月前
|
存储 机器学习/深度学习 算法
阿里云X86/ARM/GPU/裸金属/超算等五大服务器架构技术特点、场景适配与选型策略
在我们选购阿里云服务器的时候,云服务器架构有X86计算、ARM计算、GPU/FPGA/ASIC、弹性裸金属服务器、高性能计算可选,有的用户并不清楚他们之间有何区别。本文将深入解析这些架构的特点、优势及适用场景,帮助用户更好地根据实际需求做出选择。
|
11月前
|
存储 人工智能 弹性计算
着眼未来,共建多元化的大模型生态
本文介绍了德勤中国如何利用大模型赋能企业,分享了阿里云“产品博士”作为首个内部案例的成功经验,以及阿里云智能集团如何通过“模型+应用”双轮驱动,构建全面开放的大模型生态,帮助企业实现业务价值。
|
存储 关系型数据库 MySQL
MySQL 中单表数据的最大行数应该控制在多少?
MySQL 中单表数据的最大行数应该控制在多少?
3115 1
MySQL 中单表数据的最大行数应该控制在多少?
|
开发框架 开发者 UED
Pygame的主要模块有哪些?
【6月更文挑战第11天】Pygame的主要模块有哪些?
209 5
|
安全 Java Linux
嵌入式Android系统启动基本分析
嵌入式Android系统启动基本分析
226 0
idea全局搜索快捷键Ctrl+Shift+F不起作用
idea全局搜索快捷键Ctrl+Shift+F不起作用
1044 0
idea全局搜索快捷键Ctrl+Shift+F不起作用