diff --git a/README.md b/README.md index 97caa94..c76a72d 100644 --- a/README.md +++ b/README.md @@ -89,7 +89,8 @@ Here are reasons why sass-webpack-plugin is not the best case: new SassPlugin('./src/styles/index.scss', { sourceMap: true, sass: { outputStyle: 'compressed' }, - autoprefixer: false + autoprefixer: false, + compileOnSave: true // compile on each save, even in dev server mode }); ``` diff --git a/src/index.js b/src/index.js index 05dd9e5..1b8a0bf 100644 --- a/src/index.js +++ b/src/index.js @@ -41,9 +41,9 @@ const processFiles = files => { } } -const KNOWN_OPTIONS = ['sourceMap', 'sass', 'autoprefixer']; +const KNOWN_OPTIONS = ['sourceMap', 'sass', 'autoprefixer', 'compileOnSave']; const processConfig = (mode, config) => { - let options = { sourceMap: true, sass: { sourceMapContents: true } }; + let options = { sourceMap: true, sass: { sourceMapContents: true }, compileOnSave: false }; if(mode === 'development' || mode === undefined) { options.sass.indentedSyntax = true; @@ -83,7 +83,7 @@ class SassPlugin { // skip child compilers if(compilation.compiler !== compiler) return; - if(audit.isUpToDay(compilation.fileTimestamps)) return; + if(audit.isUpToDay(compilation.fileTimestamps) && !this.options.compileOnSave) return; compilation.plugin('additional-assets', cb => { processor.process().then(([stats, asset, sourceMaps]) => {