Node.js
grunzen
Suche…
Bemerkungen
Lesen Sie weiter:
Das Handbuch zum Installieren von Grunt enthält detaillierte Informationen zur Installation bestimmter, in der Entwicklung oder in der Entwicklung befindlicher Versionen von Grunt und Grunt-cli.
Das Handbuch zum Konfigurieren von Aufgaben enthält ausführliche Erläuterungen zum Konfigurieren von Aufgaben, Zielen, Optionen und Dateien in der Gruntfile sowie eine Erläuterung von Vorlagen, Globbing-Mustern und dem Importieren externer Daten.
Das Handbuch zum Erstellen von Aufgaben listet die Unterschiede zwischen den Arten von Grunt-Aufgaben auf und zeigt eine Reihe von Beispielaufgaben und Konfigurationen.
Einführung in GruntJs
Grunt ist ein JavaScript Task Runner, der zur Automatisierung sich wiederholender Aufgaben wie Minifizierung, Kompilierung, Komponententest, Flusen usw. verwendet wird.
Um zu beginnen, müssen Sie die Befehlszeilenschnittstelle (CLI) von Grunt global installieren.
npm install -g grunt-cli
Vorbereiten eines neuen Grunt-Projekts: Bei einem typischen Setup werden zwei Dateien zu Ihrem Projekt hinzugefügt: package.json und die Gruntfile.
package.json: Diese Datei wird von npm verwendet, um Metadaten für Projekte zu speichern, die als npm-Module veröffentlicht wurden. Sie werden grunt und die grunt-Plugins, die Ihr Projekt benötigt, als devDependencies in dieser Datei auflisten.
Gruntfile: Diese Datei hat den Namen Gruntfile.js und wird zum Konfigurieren oder Definieren von Aufgaben und zum Laden von Grunt-Plugins verwendet.
Example package.json:
{
"name": "my-project-name",
"version": "0.1.0",
"devDependencies": {
"grunt": "~0.4.5",
"grunt-contrib-jshint": "~0.10.0",
"grunt-contrib-nodeunit": "~0.4.1",
"grunt-contrib-uglify": "~0.5.0"
}
}
Beispiel für eine Gruntdatei:
module.exports = function(grunt) {
// Project configuration.
grunt.initConfig({
pkg: grunt.file.readJSON('package.json'),
uglify: {
options: {
banner: '/*! <%= pkg.name %> <%= grunt.template.today("yyyy-mm-dd") %> */\n'
},
build: {
src: 'src/<%= pkg.name %>.js',
dest: 'build/<%= pkg.name %>.min.js'
}
}
});
// Load the plugin that provides the "uglify" task.
grunt.loadNpmTasks('grunt-contrib-uglify');
// Default task(s).
grunt.registerTask('default', ['uglify']);
};
Gruntplugins installieren
Abhängigkeit hinzufügen
Um ein Gruntplugin verwenden zu können, müssen Sie es zunächst als Abhängigkeit zu Ihrem Projekt hinzufügen. Verwenden wir das jshint-Plugin als Beispiel.
npm install grunt-contrib-jshint --save-dev
Mit --save-dev
Option --save-dev
wird das Plugin in package.json
. Auf diese Weise wird das Plugin nach einer npm install
immer npm install
.
Laden des Plugins
Sie können Ihr Plugin mit loadNpmTasks
in die Gruntfile-Datei loadNpmTasks
.
grunt.loadNpmTasks('grunt-contrib-jshint');
Aufgabe konfigurieren
Sie konfigurieren die Aufgabe in der Gruntdatei, indem jshint
dem an grunt.initConfig
Objekt eine Eigenschaft namens jshint
grunt.initConfig
.
grunt.initConfig({
jshint: {
all: ['Gruntfile.js', 'lib/**/*.js', 'test/**/*.js']
}
});
Vergessen Sie nicht, dass Sie andere Eigenschaften für andere Plugins haben können, die Sie verwenden.
Aufgabe ausführen
Um die Aufgabe einfach mit dem Plugin auszuführen, können Sie die Befehlszeile verwenden.
grunt jshint
Oder Sie können jshint
zu einer anderen Aufgabe hinzufügen.
grunt.registerTask('default', ['jshint']);
Die Standardaufgabe wird mit dem Befehl grunt im Terminal ohne Optionen ausgeführt.