Скомпилируйте все в папке scss в style.css через терминал - PullRequest
0 голосов
/ 28 июня 2019

У меня следующая структура папок:

theme
    scss
       hero.scss
       header.scss
    style.css

Я пытаюсь скомпилировать все в scss в style.css. Я следовал этому учебнику , но я верю, что этот подход скомпилирует несколько разных css файлов (тогда как мне нужен только один).

Даже с указанным выше подходом, когда я запускаю npm run scss, он ничего не компилирует?

Это мой package.json файл:

{
  "name": "test",
  "version": "1.0.0",
  "description": "",
  "main": "index.js",
  "scripts": {
    "test": "echo \"Error: no test specified\" && exit 1",
    "scss": "node-sass --watch scss -o css"
  },
  "author": "",
  "license": "ISC"
}

При запуске npm run watch-css или npm run scss ничего не происходит? Куда я иду не так?

1 Ответ

0 голосов
/ 28 июня 2019

Ваш входной каталог и выходные каталоги неверны для команды node-sass. Предполагая, что у вас следующая структура каталогов:

theme
    scss
      hero.scss
      header.scss
    style.css
package.json

Вы создали скрипт запуска npm с именем scss, который использует библиотеку node-sass для компиляции SASS в CSS. Если вы хотите выполнить этот сценарий запуска, введите в командной строке следующее: npm run scss

Теперь, когда вы вводите эту команду, вы на самом деле запускаете библиотеку node-sass со следующими параметрами:

node-sass --watch scss -o css

В этой команде вы указали, что ваши Sass-файлы существуют в вашем каталоге scss, и node-sass должен посмотреть в этом каталоге, чтобы скомпилировать ваш Sass в CSS. Как только это будет сделано, ваш новый сгенерированный CSS будет перемещен в директорию css.

Однако первая проблема заключается в том, что у вас нет каталога css для node-sass, в который можно поместить эти скомпилированные файлы Sass. Это можно исправить, создав папку css в каталоге theme или изменив соответствующий параметр выходного местоположения .

Другая проблема заключается в том, что ваше расположение каталога ввода неверно для ваших файлов Sass. Вы указали его как scss каталог , однако это расположение относительно вашего package.json файла и между этими файлами есть папка theme. Вероятно, это следует изменить на следующее: theme/scss.

Таким образом, чтобы заставить эту команду работать должным образом, вам нужно изменить каталоги ввода и вывода, чтобы они указывали на правильную структуру каталогов вашего приложения.

Возможно, вы можете попробовать изменить скрипт запуска на следующий и посмотреть, поможет ли это ( Если вы не хотите создавать папку css ):

"scss": "node-sass --watch theme/scss -o theme"

затем снова запустите ваш скрипт npm так:

npm run scss

Надеюсь, это поможет!

...