最近新起一个项目,需从头搭一个环境,这里主要是记录一下中间遇到的一些问题,以防再犯,毕竟之前以为自己记得住的很多问题 现在都忘记了…
环境:vue-cli脚手架生成项目
使用sass,安装 node-sass style-loader css-loader sass-loader 后,启动项目
报错
Failed to compile with 1 errors 10:03:43 PM
This relative module was not found:
* ./@/assets/logo.jpg in ./node_modules/_css-loader@0.28.11@css-loader?{"sourceMap":true}!./node_modules/_vue-loader@13.7.3@vue-loader/lib/style-compiler
* ?{"vue":true,"id":"data-v-68781400","scoped":true,"hasInlineConfig":false}!./node_modules/_sass-loader@7.1.0* @sass-loader/lib/loader.js
* ?{"sourceMap":true}!./node_modules/_vue-loader@13.7.3@vue-loader/lib/selector.js?type=styles&index=0!./src/components/navBar.vue
起初以为是包没安装好,删除node_modules,重新用cnpm安装,重启后依然报错。
几番查找,找到了根源
问题是我在css里面引用了一张图片做背景图,路径用@
来查找,但是在style
里面不支持 !
解决方法:
1、确保alias
可用
2、使用 ~
前缀引用
带有 ~
前缀的URL将会被视为依赖模块的请求,类似于 require('some-module/image.png')