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 找找原因,到时在更新一下文章。

目录
相关文章
|
1月前
|
前端开发 JavaScript 开发者
UI 框架:element-ui(二)
在当今快速发展的前端开发领域,用户界面的设计和交互体验日益成为软件成功的关键因素之一。Element UI,作为一款基于Vue.js的组件库,以其精美的界面和丰富的功能受到了广泛的关注与应用。它为开发者提供了一整套高质量的组件,帮助他们快速构建具有现代感的应用程序。 Element UI不仅注重美观的设计,还提供了良好的文档支持和社区活跃度,使得开发者能够轻松上手并解决实施过程中的各种问题。在这篇文章中,我们将深入探讨Element UI的基本特点、安装步骤,以及如何利用其强大的组件系统高效地构建用户友好的界面。无论您是初学者还是有经验的开发者,这篇文章都将为您开辟一条通向更高效开发的道路。
|
1月前
|
前端开发 开发者 UED
UI 框架:nav-ui&uni-ui&vant
本文档介绍了`nav-ui`、`uni-ui`和`vant`三个UI库的基本使用方法,包括图标、表格和树的使用示例,以及如何在项目中安装和配置这些UI组件。对于`nav-ui`,详细说明了图标组件的安装与使用,包括本地图标和第三方图标库的集成方式。`uni-ui`部分则重点讲解了CSS的使用方法。最后,`vant`部分提供了从项目创建到组件安装的具体步骤,以及如何将下载的组件正确地集成到项目中。
|
6月前
|
前端开发 JavaScript UED
前端UI组件
前端UI组件
103 0
|
6月前
|
前端开发
chakra-ui
chakra-ui
64 0
|
XML 数据安全/隐私保护 数据格式
Morn UI 学习总结
Morn UI 学习总结
71 0
|
XML Java BI
QMUILayout, 让 UI 开发更简单
在 Android UI开发过程中,我们会觉得非常繁琐的事情是什么呢?分隔线、圆角、边框、阴影、点击态等,在以往的实践中,我们都是通过 drawable 去实现的,非常麻烦。以分隔线为例,如果左右都打通,那还能复用,但现在的设计师都喜欢左边或右边有一定的 inset,而 inset 的值并非一成不变的,这不经意间就使得项目添加了数不清的 drawable,因此目前大多数人都开始尝试不使用 drawble 去解决这些问题了,QMUI 也不例外。
262 0
|
定位技术 UED
UI 设计是什么?
UI是用户界面的简称,UI是用户与设备、网站或应用程序交互的媒介,目标是使用户体验简单直观,用户只需付出最少的努力即可获得所期望的结果。
190 0
|
XML 编解码 数据可视化
第三讲 UI控件使用
第三讲 UI控件使用
180 0
第三讲 UI控件使用
|
监控 C# Windows
【UiPath2022+C#】UiPath 调试
本博文我们将介绍让自动化进入就绪状态最重要的因素之一:如何在工作流中使用调试功能解决错误。
【UiPath2022+C#】UiPath 调试
|
存储 C# Windows
【UiPath2022+C#】UiPath参数
变量和参数,或者说是如何在各种活动和工作流之间收集、存储、处理和传递数据。
【UiPath2022+C#】UiPath参数