2017-06-13 5 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', 
]); 

Ich möchte eine neue gurnt Aufgabe erstellen. Currenly, in meinem Projekt, grunt css funktioniert gut, um die complate packae SCSS zu bauen. Ich muss eine neue Aufgabe wie grunt home erstellen, die einen bestimmten Ordner SCSS erstellen wird.Erstellen Sie mehrere Grunt Aufgabe

Wie kann ich grunt home erstellen?

+0

'grunt.registerTask ('gruntHome', ['homeSASS'])' vielleicht so? Nächster Schritt create homeSASS wie Sass, aber mit diffrent dest – guest

+0

werden Sie bitte erklären, wie das zu erstellen? – Sony

Antwort

0

ich denke, das sollte funktionieren, aber ich es nicht getestet (es wird SCSS kompilieren Dateien von der Quelle/styles/SCSS zu css in build/styles/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' 
]); 

Ist es Ihre Are Auf der Suche nach? Oder ich missverstehe dich?

+0

Es wird Fehler angezeigt: Warnung: Task "homeSass" nicht gefunden. Verwenden Sie --force, um fortzufahren. – Sony

+0

Ja, Sie haben Recht. Ich suche das Gleiche. Hier ist mein bearbeiteter Code https://jsfiddle.net/nsj3r9Lm/ aber sein Wurffehler: 'Warnung: Aufgabe" homeSass "nicht gefunden. Verwenden Sie --force, um fortzufahren. – Sony

+0

Fügen Sie 'grunt.registerTask ('homebuild', ['homeSass']) hinzu;' und starten Sie über 'gulp homebuild' – guest

0

so etwas wie dieses können Sie mehrere Aufgaben

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' 
]); 

Erstellen Sie nun laufen diese Sie haben 2 Möglichkeiten

1) einfach grunt home sagen nur sass Kompilation laufen spezifische

sass2

2) Wenn Sie jetzt beide Aufgaben grunt css und grunt home in 1 ausführen möchten, dann tun Sie dies

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

Sollte es nicht' grunt home' usw. nicht 'gulp' sein? – Revive

+0

Ja richtig grunzen zu Hause, tut mir leid, mein schlechter Start mit Schluck für ein paar Wochen das ist, warum dieser Schluck bewegt sich in meinen Gedanken –

+0

Sie sind nicht der einzige. @guest erwähnt es auch in den Kommentaren: "Schluck Homebuild", also wusste ich nicht, ob das nur Zufall war oder ob mir etwas fehlte! – Revive

Verwandte Themen