Загрузка в стиле Vue s css завершается с помощью mocamapck - PullRequest
1 голос
/ 20 апреля 2020

У меня проблема при модульном тестировании однофайлового компонента vue с некоторым стилем s css, так как он не может обработать операторы @import. Он работает, когда я запускаю приложение с использованием yarn run dev или сборку для производства yarn run build, проблема связана только с режимом модульного тестирования, а моя установка использует mochapack для запуска веб-пакета перед выполнением теста.

 WEBPACK  Compiling...

  [=========================] 98% (after emitting)

 ERROR  Failed to compile with 1 errors

 error  in ./src/components/WorkTrigger.vue?vue&type=style&index=0&lang=scss&

Module build failed (from ./node_modules/sass-loader/dist/cjs.js):
SassError: Can't find stylesheet to import.
  ╷
1 │ @import 'themes/default/variables';
  │         ^^^^^^^^^^^^^^^^^^^^^^^^^^
  ╵
  home/xxxxx/src/styles/main.scss 1:9  @import
  /home/xxxxx/src/components/WorkTrigger.vue 39:9                                             root stylesheet

 @ ./node_modules/vue-style-loader??ref--9-oneOf-1-0!./node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!./node_modules/vue-loader/lib/loaders/stylePostLoader.js!./node_modules/postcss-loader/src??ref--9-oneOf-1-2!./node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!./node_modules/cache-loader/dist/cjs.js??ref--1-0!./node_modules/vue-loader/lib??vue-loader-options!./src/components/WorkTrigger.vue?vue&type=style&index=0&lang=scss& 4:14-442
 @ ./src/components/WorkTrigger.vue?vue&type=style&index=0&lang=scss&
 @ ./src/components/WorkTrigger.vue
 @ ./tests/unit/WorkTrigger.spec.ts
 @ ./node_modules/mochapack/lib/entry.js

Type checking in progress...
  [=========================] 100% (completed)

 WEBPACK  Failed to compile with 1 error(s)

Error in ./src/components/WorkTrigger.vue?vue&type=style&index=0&lang=scss&

  Module build failed (from ./node_modules/sass-loader/dist/cjs.js):
  SassError: Can't find stylesheet to import.
    ╷
  1 │ @import 'themes/default/variables';

Любые идеи о том, как это можно решить. Мне не нужно загружать s css для тестирования, хотя я не могу отключить обработку стилей (null-loader), так как у меня нет файла webpack.config в проекте, и я не буду создавать его, если не совсем нужно. Проект сгенерирован с помощью Vue CLI.

1 Ответ

0 голосов
/ 05 мая 2020

Мне удалось это исправить, добавив путь к ~ ~ / / ..., попробуйте и посмотрите. Пример: "@import: '~ @ / styles / variable';"

...