angular加载layer 报mime错误(laydate也可以相同解法)

Refused to apply style from 'http://localhost:4200/theme/default/layer.css?v=3.1.1' because its MIME type ('text/html') is not a supported stylesheet MIME type, and strict MIME checking is enabled.

遇到这个错误僵持了我整整一天

最后终于在某个大神CSDN的一个回复下看到了。。

没错就是回复。。。。

博客是这个https://blog.csdn.net/qq_35321405/article/details/80340417

回归正题

遇到这个报错,首先需要把layer放在静态资源的目录下,一般默认是src/assets作为默认的静态资源目录

然后需要修改layer.js中加载layer.css路径的语句

打开layer.js文件

找到这一句话

"modules/layer/":"theme/")+"default/layer.css?v="+r.v+i

替换为(就是替换路径并且删除版本号,目录结构与我不同则需要自行进行修改,在下面写着我的思路,希望对你有所帮助)

"modules/layer/":"assets/layer/theme/"

按照回复,大致意思为,把版本号删除,然后把路径补全,注意补全的时候,需要补的是自己的路径,自己路径相对于assets的路径我的目录结构是assets->layer->theme->layer.css这样的,需要自己把错误路径改成自己需要加载的文件静态路径

个人感觉

然后按照推断,大概思路是,原本的layer.js里加载layer.css的方法是通过相对路径获取,但是在angular里没有进行路由映射之类的东西,因此会报错,报错是mime错误,百度谷歌后,大概意思是,加载的资源不是对应的资源类型还是媒体类型,反正大概就是货不对板吧,加载到的不是CSS文件。

我通过打开报错的地址

http://localhost:4200/theme/default/layer.css?v=3.1.1

发现

路由到的依旧是angular根页面

最后得出,这个报错的原因是找不到CSS文件,也就是路由错误

于是需要把layer.css作为静态资源加载

在angular.json里的这一句,标志了静态地址的位置

我也试着敲到这个路径里

http://localhost:4200/assets/layer/layer.js

发现确实这个路径是可以加载到对应文件的

于是思路解开了

主要就是把加载layer.css错误路径,导航到正确的静态资源路径里。

猜你喜欢

转载自blog.csdn.net/ever_evil/article/details/88956952