【写在前面vue3在vscode运行正常、build后在IDEA运行正常,但是当部署服务器运行发现样式加载不出来,下面我们针对这些情况进行复现解决

一、问题分析

困扰我好久,当即百度原因百度清一色下面三种情况:
1、nginx配置文件问题
2、控制台样式404,文件找到文件路径错误
3、样式引入顺序不对存在覆盖
但是我的以上都不是,搞得我头都大,我的居然是java配置拦截问题

二、问题解决(多方位解决

1、nginx配置问题解决方法是:

找到服务器上nginx.conf文件,一般在/nginx/conf路径下,编辑文件查看一下是否http的方括号是否有一下内容没有的话添加上,有的忽略

include       mime.types;
default_type  application/octet-stream;

这个也是会引发css样式加载不了的状况,添加效果如下
在这里插入图片描述

2、控制样式引入404解决方法

页面空白,且控制加载样式cssjs文件都是404状态也,如下
在这里插入图片描述
那么这种情况问题就出现前端上了,切记排查前端项目vue.config.js文件,看看里面publicPath变量是否写成了’/’,而不是’./’,这里的·是很重要的,意味着表示相对路径,要是没有点的话就是绝对路径根目录),所以会存在404的问题。修改如下
在这里插入图片描述
然后修改好后记得重新打包上传哟!

3、样式文件引入位置先后的问题解

当然这个针对很多人说的elementui的引入的问题,说是调整main.js文件引入elementuicss样式的先后顺序,也就是import App之前加引入,如下所示顺序

import 'element-ui/lib/theme-chalk/index.css'
import App from './App'

但是我自己测试不管在前在后都一样的效果,所以我个人觉得这个作用没啥用。

4、java配置文件拦截问题解决

之前一直把方向定位nginxtomcatvue前端代码上,却忽略java拦截java应该springmvc.xml文件设置放行文件,也就是mvc:resources标签里面应该cssimagejs进行放行,具体根据你的配置来写,我的如下

<mvc:resources location="/static/css/" mapping="/static/css/**"/>
<mvc:resources location="/static/img/" mapping="/static/img/**"/>
<mvc:resources location="/static/js/" mapping="/static/js/**"/>

之前我以为没有用,把它注释了,导致自己花了好一段时间才定位出来,所以大家出现css页面上能加载,但是页面样式错乱的情况下,可以自己去想一想是不是java文件没放行的原因,尤其是有些人会写一些doFilter文件做权限控制
在这里插入图片描述

三、搞定收工

最后再将包重新clean-重新打包后,上传服务器上面,然后访问您就会发现其实往往更多时候自己忽略了一些细节,希望我写的记录的能给迷茫的您带来一些帮助哈,喜欢的话可以收藏哟!
如果还没解决您的问题欢迎留言看到博主会尽量回复解答,有其他特殊情况也会定期更新解决方案,期待您的来信与留言!!

【写在最后】喜欢博主的话可以给个小爱心哟,我们一起努力,一起加油!!!岁月静好,愿青春温柔以待

原文地址:https://blog.csdn.net/hdp134793/article/details/128140249

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任

如若转载,请注明出处:http://www.7code.cn/show_37814.html

如若内容造成侵权/违法违规/事实不符,请联系代码007邮箱suwngjj01@126.com进行投诉反馈,一经查实,立即删除

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注