Параметр реализации необходимо передать задаче Sass

Запускаем grunt - я получаю такое сообщение об ошибке:

Running "sass:all" (sass) task
Fatal error: The implementation option must be passed to the Sass task

Я пробовал переустановить grunt, node, npm, dependencies, но я всегда возвращаюсь к этой ошибке, которую не могу пройти.

Должен ли я опубликовать свой Gruntfile.js? Честно говоря, это было создано третьей стороной, и мы не используем его часто - я думаю, может быть, нам стоит начать с нуля, потому что изначально это было около 4 лет назад ... но интересно, видел ли кто-нибудь эта ошибка раньше и знает исправление / обходной путь.

может потребоваться дерзкая задача, чтобы помочь вам

anderssonola 16.08.2018 09:09
Настройка шаблона Metronic с помощью Webpack и Gulp
Настройка шаблона Metronic с помощью Webpack и Gulp
Я пишу эту статью, чтобы поделиться тем, как настроить макет Metronic с помощью Sass, поскольку Metronic предоставляет так много документации, и они...
17
1
10 207
3

Ответы 3

ОБНОВЛЕНИЕ: работает только для grunt-sass 2.x

У меня возникла эта проблема при обновлении с grunt-sass 1.x до 2.x. Это решило это для меня:

Добавьте implementation: 'sass' к вашему объекту sass.options в Gruntfile.js следующим образом:

options: {
    implementation: 'sass',
    outputStyle: 'expanded',
    sourceMap: true,
    quiet: true // stop depreciation errors
},

реализация: sass сломал мою. реализация: sass работал

Onshop 04.10.2019 20:06

С обновлением до grunt-sass 3 вам нужно выбрать, хотите ли вы использовать node-sass или dart-sass для компиляции Для node-sass вам необходимо установить модуль с помощью:

$ npm install --save-dev node-sass 

В вашем gruntfile вам нужно добавить node-sass в качестве требования и добавить константу определения в качестве варианта реализации:

const sass = require('node-sass');

require('load-grunt-tasks')(grunt);

grunt.initConfig({
    sass: {
        options: {
            implementation: sass,
            sourceMap: true
        },
        dist: {
            files: {
                'main.css': 'main.scss'
            }
        }
    }
});

Смотрите также официальную страницу для более подробной информации: https://www.npmjs.com/package/grunt-sass

использовать этот

   **const sass = require("node-sass");**

**grunt.initConfig({
sass: {
  options: {
    implementation: sass,
    sourceMap: true,
  },
  dist: {
    files: {
      "css/styles.css": "css/styles.css",
    },
  },
},

});

Это поможет вам решить проблему

Другие вопросы по теме