Uwaga: to pytanie dotyczy tylko Grunt 0.3.x i zostało pozostawione w celach informacyjnych. Aby uzyskać pomoc dotyczącą najnowszej wersji Grunt 1.x, zobacz mój komentarz pod tym pytaniem.
Obecnie próbuję użyć Grunt.js do skonfigurowania automatycznego procesu kompilacji, aby najpierw połączyć, a następnie minifikować pliki CSS i JavaScript.
Udało mi się pomyślnie połączyć i zminimalizować moje pliki JavaScript, chociaż za każdym razem, gdy uruchamiam grunt, wydaje się, że po prostu dołącza do pliku, zamiast je nadpisywać.
Jeśli chodzi o minifikację, a nawet konkatenację CSS, na razie nie mogłem tego zrobić!
Grunt pod względem modułów CSS Próbowałem, używając consolidate-css
, grunt-css
& cssmin
, ale bezskutecznie. Nie mogłem się dowiedzieć, jak ich używać!
Moja struktura katalogów jest następująca (jest to typowa aplikacja node.js):
- app.js
- grunt.js
- /public/index.html
- / public / css / [różne pliki css]
- / public / js / [różne pliki javascript]
Oto jak obecnie wygląda mój plik grunt.js w folderze głównym mojej aplikacji:
module.exports = function(grunt) {
// Project configuration.
grunt.initConfig({
pkg: '<json:package.json>',
concat: {
dist: {
src: 'public/js/*.js',
dest: 'public/js/concat.js'
}
},
min: {
dist: {
src: 'public/js/concat.js',
dest: 'public/js/concat.min.js'
}
},
jshint: {
options: {
curly: true,
eqeqeq: true,
immed: true,
latedef: true,
newcap: true,
noarg: true,
sub: true,
undef: true,
boss: true,
eqnull: true,
node: true
},
globals: {
exports: true,
module: false
}
},
uglify: {}
});
// Default task.
grunt.registerTask('default', 'concat min');
};
Podsumowując, potrzebuję pomocy z dwoma pytaniami:
/public/css/
Powiedzmy, jak połączyć i zminimalizować wszystkie moje pliki css w folderze w jeden plikmain.min.css
- Dlaczego grunt.js zachować na dołączenie do łączone i minified plików javascript
concat.js
iconcat.min.js
pod/public/js/
zamiast nadpisywania ich za każdym razem, gdy poleceniegrunt
jest uruchamiane?
Zaktualizowano 5 lipca 2016 r. - Aktualizacja z Grunt 0.3.x do Grunt 0.4.x lub 1.x
Grunt.js
przeniósł się do nowej struktury w Grunt 0.4.x
(plik ma teraz nazwę Gruntfile.js
). Proszę zobaczyć mój projekt Open Source Grunt.js Skeleton, aby uzyskać pomoc w konfiguracji procesu kompilacji dla Grunt 1.x
.
Przejście z Grunt 0.4.x
do Grunt 1.x
nie powinno wprowadzać wielu większych zmian .
concat
w tym samymjs
folderze, zgarnąłby go i dołączył! Zacząłem używać cssmin i działa świetnie! Dzięki jeszcze raz.