Grunt-contrib-sass для разработчиков и прод? - PullRequest
0 голосов
/ 16 октября 2018

Как настроить разные задачи grunt-contrid-sass для dev и prod?Мне нужны разные css-файлы - с исходными картами и без них.

Я пробовал:

sass: {
dev: {
    options: {
        sourcemap: 'inline',
    },      
},      
prod: {
    options: {
        sourcemap: 'none',
    },      
},
      files: {
        expand: true,
        cwd: 'static/compass/sass/pages/redesign/',
        src: ['**/*.scss'],
        dest: 'static/compass/css/pages/redesign/',
        ext: '.css'
      },
  },

Но в этом случае задача sass: dev не компилирует никаких файлов.

Когда я пытаюсь:

sass: {
dev: {
    options: {
        sourcemap: 'inline',
    },      
      files: {
        expand: true,
        cwd: 'static/compass/sass/pages/redesign/',
        src: ['**/*.scss'],
        dest: 'static/compass/css/pages/redesign/',
        ext: '.css'
      },

},      
prod: {
    options: {
        sourcemap: 'none',
    },      
      files: {
        expand: true,
        cwd: 'static/compass/sass/pages/redesign/',
        src: ['**/*.scss'],
        dest: 'static/compass/css/pages/redesign/',
        ext: '.css'
      },

},
  }

, я получаю предупреждение с предложением использовать "--force".Но даже с использованием «--force» я не получаю скомпилированные файлы.

Есть ли способ сделать это?

1 Ответ

0 голосов
/ 16 октября 2018

Ваш второй пример близок к тому, что должно быть.Однако значением каждого свойства files должен быть массив, содержащий объект, как показано в в этом примере в документации.

Например, оно должно быть:

files: [{
  //...
}]

и НЕ :

files: {
  //...
}

Вместо этого измените задачу saas на следующее:

sass: {
  dev: {
    options: {
      sourcemap: 'inline'
    },      
    files: [{ // <-- change this
      expand: true,
      cwd: 'static/compass/sass/pages/redesign/',
      src: ['**/*.scss'],
      dest: 'static/compass/css/pages/redesign/',
      ext: '.css'
    }] // <-- change this
  },
  prod: {
    options: {
      sourcemap: 'none'
    },      
    files: [{ // <-- change this
      expand: true,
      cwd: 'static/compass/sass/pages/redesign/',
      src: ['**/*.scss'],
      dest: 'static/compass/css/pages/redesign/',
      ext: '.css'
    }] // <-- change this
  }
}

РЕДАКТИРОВАТЬ

Примечание: Вам также следует рассмотреть возможность изменения пути dest в целях dev или prod (или в обеих), поскольку в настоящее время они являются одним и тем же путем, т.е.если вы запустите оба sass:prod и sass:dev, вывод одной задачи будет перезаписан другой.

...