Sass Loader и Vue CLI 4 не работают вместе в тестовом режиме - PullRequest
1 голос
/ 19 октября 2019

Недавно обновлен до Vue CLI 4, и мой Sass Loader не позволяет мне работать с моим веб-приложением в тестовом режиме. Моя команда тестового режима выглядит следующим образом:

"serve:test": "cross-env NODE_ENV=test vue-cli-service serve --mode test"

Когда я запускаю эту команду, я получаю следующие ошибки:

Module build failed (from ./node_modules/sass-loader/dist/cjs.js):
SassError: Undefined variable: "$background-color".
        on line 96 of C:\Users\Me\Code\myapp\src\assets\css\sass\_main.style.scss
>>   background: $background-color;
   --------------^


 @ ./src/assets/css/sass/_main.style.scss 4:14-249 14:3-18:5 15:22-257
 @ ./src sync ^.*$
 @ ./src/index.js
 @ multi (webpack)-dev-server/client?http://192.168.255.142:8080/sockjs-node (webpack)/hot/dev-server.js ./src/index.js

 error  in ./src/assets/css/sass/_myapp.style.scss

Module build failed (from ./node_modules/sass-loader/dist/cjs.js):
SassError: Undefined variable: "$logoPathInverted".
        on line 9 of C:\Users\Me\Code\myapp\src\assets\css\sass\_myapp.style.scss
>>   background: url($logoPathInverted) no-repeat;
   ------------------^


 @ ./src/assets/css/sass/_myapp.style.scss 4:14-248 14:3-18:5 15:22-256
 @ ./src sync ^.*$
 @ ./src/index.js
 @ multi (webpack)-dev-server/client?http://192.168.255.142:8080/sockjs-node (webpack)/hot/dev-server.js ./src/index.js

Дело в том, что _main.style.scss и _myapp.style.scssзагружен INTO файл, в котором эти переменные объявлены и на которые *1001* никогда не ссылаются по отдельности. Примерно так:

// my_file_with_declared_vars.scss

$var: #fff;

@import '_main.style.scss';
@import '_myapp.style.scss';

Когда я запускаю npm run serve ("serve": "vue-cli-service serve"), мое приложение запускается нормально.

Почему мои стили не загружаются должным образом в тестовом режиме?

...