Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/35.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript grunt更新不使用grunt sass_Javascript_Node.js_Sass_Gruntjs_Libsass - Fatal编程技术网

Javascript grunt更新不使用grunt sass

Javascript grunt更新不使用grunt sass,javascript,node.js,sass,gruntjs,libsass,Javascript,Node.js,Sass,Gruntjs,Libsass,我正在尝试使用grunt更新来获取对sass部分的更改,然后运行grunt sass任务。出于某种原因,它似乎没有注册任何更新。啊 目录结构示例: sass - components _breadcrumb.scss - helpers _variables.scss main.scss Sass配置: files: [{ expand: true, cwd: 'static/sass', src: ['*.scs

我正在尝试使用grunt更新来获取对sass部分的更改,然后运行grunt sass任务。出于某种原因,它似乎没有注册任何更新。啊

目录结构示例:

sass
    - components
        _breadcrumb.scss
    - helpers
        _variables.scss
    main.scss
Sass配置:

files: [{
    expand: true,
    cwd: 'static/sass',
    src: ['*.scss'],
    // src: ['**/*.scss'],
    dest: 'static/styles',
    ext: '.css'
}]
main.scss包含用于读取部分的@imports

运行grunt更新版:sass将查找对main.scs的更改。更新全局规则以使用**/*.scss不会在任何文件中拾取任何更改

这感觉像是一个全球性的问题,但我就是解决不了

如有任何帮助,我们将不胜感激。

请特别参阅本页末尾的“覆盖”一节。这就是路

grunt.config('newer', {
  options: {
    override: function (detail, include) {
      if (detail.task == 'sass') {
        if (detail.path.match('^sass/includes/')) {
          include(true);
        }
        else {
          include(false);
        }
      }
      else {
        include(false);
      }
    }
  }
});
(不要忘记将
^sass/includes/
调整并扩展到您的文件树)


我还不能100%确定每次扫描该文件夹中的所有文件,不管它们是否“更新”,但是…

如何运行该任务?我想将其作为并发任务的一部分,部署的一部分运行。对于这个测试,我只是单独运行它。更新一个scss部分,运行更新的,然后继续运行我相信这可能与使用扩展语法有关。看见