2017-06-13 99 views
0
watch: { 
    css: { 
     files: 'source/styles/**/*.scss', 
     tasks: ['sass', 'autoprefixer', 'cssmin', 'clean:css'], 
     options: { 
      spawn: false, 
     }, 
    }, 
    images: { 
     files: 'source/assets/images/**/*.{png,jpg,gif}', 
     tasks: ['clean:image', 'imagemin'], 
     options: { 
      spawn: false, 
     }, 
    } 
} 



grunt.registerTask('css', [ 
    'sass', 
    'cssmin', 
    'clean:css' 
]); 



sass: { 
    dist: { 
     files: [{ 
      expand: true, 
      src: ['source/styles/**/*.scss'], 
      dest: 'build/styles/', 
      ext: '.css', 
      flatten: true 
     }] 
    }, 
    options: { 
     compass: true, 
     sourcemap: false 
    } 
} 


grunt.registerTask('default', [ 
    'sass', 
    'cssmin', 
    'clean:css', 
    'requirejs', 
    'clean:js', 
]); 

我想创建一个新的gurnt任务。当然,在我的项目中,grunt css正在很好地构建complate packae SCSS。 我需要创建一个新的任务,如grunt home,它将构建一个特定的文件夹SCSS。创建多个咕task任务

如何创建grunt home

+0

'grunt.registerTask('gruntHome',['homeSASS'])'也许这种方式?下一步创建homeSASS像sass,但是与不同的目标 – guest

+0

你能解释一下如何创建这个? – Sony

回答

0

我认为这应该工作,但我没有测试它(它会从源代码编译/风格/ SCSS SCSS文件,以在建/风格/ CSS,CSS):

homeSass: { 
    dist: { 
     files: [{ 
      expand: true, 
      src: ['source/styles/SCSS/**/*.scss'], 
      dest: 'build/styles/css/', 
      ext: '.css', 
      flatten: true 
     }] 
    }, 
    options: { 
     compass: true, 
     sourcemap: false 
    } 
} 

grunt.registerTask('homebuild', [ 
    'homeSass' 
]); 

是你的ARE寻找?或者我误解了你?

+0

它显示错误: 警告:找不到任务“homeSass”。使用--force继续。 – Sony

+0

是的,你是对的。我正在寻找同样的事情。 这是我编辑的代码https://jsfiddle.net/nsj3r9Lm/,但它的投掷错误:'警告:任务“homeSass”找不到。 # – Sony

+0

添加'grunt.registerTask('homebuild',['homeSass']);'并通过'gulp homebuild'开始 – guest

0

所以这样的事情,你可以创建多个任务

sass2: { 
    dist: { 
     files: [{ 
      expand: true, 
      src: ['source/styles/**/*.scss'],//path to different source file 
      dest: 'build/styles/',//path to different destination for home 
      ext: '.css', 
      flatten: true 
     }] 
    }, 
    options: { 
     compass: true, 
     sourcemap: false 
    } 
} 

grunt.registerTask('home', [ 
    'sass2' 
]); 

我们运行这个你有2种方法

1)简单地说grunt home 这将只运行特定的青菜汇编sass2

2)现在如果你想运行任务grunt cssgrunt home在1去那么这样做

sass: { 
    dist: { 
     files: [{ 
      expand: true, 
      src: ['source/styles/**/src1.scss', 'source/styles/**/src2.scss'], 
      dest: 'build/styles/', 
      ext: '.css', 
      flatten: true 
     }] 
    }, 
    options: { 
     compass: true, 
     sourcemap: false 
    } 
} 

grunt.registerTask('home', [ 
    'sass' 
]); 
+0

它应该不是'grunt home'等不是'gulp'吗? – Revive

+0

是的正确的咕噜家,对不起我开始使用吞咽几个星期这就是为什么这个吞咽我脑海中移动 –

+0

你不是唯一的一个。 @guest也在评论中提到它:“gulp homebuild”,所以我不知道这只是巧合还是我错过了一些东西! – Revive