Vue开发的时候报This dependency was not found:

  1. 使用Nuxt.js创建的Vue项目,编写scss的时候在style标签上加上lang="scss",然后保存,编译的时候就报错。请问怎么解决呀?研究了一个早上和上午了。
  2. 这是vue代码

clipboard.png
3.报错信息

clipboard.png
4.这是nuxt.config.js文件的scss配置

clipboard.png
5.在网上找过很多类似的办法(比如https://forum.vuejs.org/t/sty...
但是都没有用
也执行过:npm install css-loader style-loader --save-dev
npm install --save
而且模块都有。
这是package.json里的依赖

clipboard.png

------新编辑的内容-------
又继续查找问题的来源,真正问题来源来自源于:@import url('~assets/stylesheet/index');
把这句删了就没什么问题,可是这又是为什么呢?我还没找到解决办法,那么这样我该怎么导入独立scss样式呢。

---------补充下项目结构,以及scss文件的路径----------

clipboard.png

下面是关于~的官方使用方式。

clipboard.png

阅读 12.1k
5 个回答

你的alias就是~assets吗,是的话再加一个~

use: [
          'style-loader',
          'css-loader',
          'sass-loader'
        ],

这样试试

你把@import scss改成正常的相对路径(../这样)呢?

通常,@import 寻找 Sass 文件并将其导入,但在以下情况下,@import 仅作为普通的 CSS 语句,不会导入任何 Sass 文件

  • 文件拓展名是 .css;
  • 文件名以 http:// 开头;
  • 文件名是 url()
  • @import 包含 media queries

如果不在上述情况内,文件的拓展名是 .scss.sass,则导入成功。没有指定拓展名,Sass 将会试着寻找文件名相同,拓展名为 .scss.sass 的文件并将其导入。

@wwh前端 把~assets 修改成~/assets可以的,倒是不报This dependency was not found:的问题了。
就是找不到scss的路径,[index.scss, _index.scss, index, _index],试过这些
clipboard.png

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题