前言

  • 最近对部分项目升级了vue-cli脚手架,记录一下

问题一: scss/less/css中无法引入public下的静态资源

问题描述

在样式文件中使用静态资源路径导致编译无法通过
在这里插入图片描述

在这里插入图片描述

错误信息如下:

Module not found: Error: Can't resolve '/img/login/login_left_bg.png' in 'E:\Project\Company\xxxxx\Web\src\page\login'

原因分析

可能是由于vue-cli5升级了css-loader导致的问题

解决方法

无解,应该是vue-cli5.x的bug,回退到4.5.x

修改vue.config.js配置文件的css配置

...
const { defineConfig } = require('@vue/cli-service')

module.exports = defineConfig({
  ...
  css: {
    loaderOptions: {
      css: {
        url: {
          filter: (url) => url[0] !== '/'
        }
      }
    }
  },
  ...
})

参考文档

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐