Maison >interface Web >js tutoriel >Écrire un script de construction génial avec un grognement

Écrire un script de construction génial avec un grognement

Christopher Nolan
Christopher Nolanoriginal
2025-02-23 10:20:11311parcourir

Writing an Awesome Build Script with Grunt

Ce guide montre comment configurer Grunt, un système de construction puissant, pour les projets Web modernes. Une fois terminé, votre gruntfile automatisera les tâches, notamment: la copie de fichiers, la construction de nettoyage, la compilation du stylet avec préfixation des fournisseurs, la compilation de coffeeScript, le CSS et la minification JavaScript, la compilation Jade, la reconstruction automatique sur les modifications source et un serveur de développement local.

Concepts clés

  • Configuration du grogne: Installez Node.js, NPM et le grunt CLI. Initialisez votre projet en tant que package NPM, définissant les dépendances dans package.json pour gérer les plugins grogn.
  • Configuration de la tâche: Utiliser grunt.initConfig pour définir les tâches (par exemple, la copie de fichiers, le nettoyage, le stylet / compilation CoffeeScript / Jade). Les sous-tâches permettent plusieurs configurations dans une seule tâche.
  • Automatisation et optimisation: Les plugins de levier comme AutopRefixer (préfixes du fournisseur CSS), UglifyJS (minification JavaScript) et CSSMIN (compression CSS) pour améliorer les performances.
  • flux de travail de développement: implémenter grunt-contrib-watch pour la reconstruction automatique sur les modifications de la source, et grunt-contrib-connect pour un serveur de développement accessible au réseau.
  • Tâches personnalisées: Créer des tâches personnalisées via grunt.registerTask pour la chaîne des opérations (par exemple, nettoyage, compilation, copie), promouvoir la modularité et la maintenabilité.

Débutage

Installez Node.js et NPM. Installez le grogne CLI globalement: npm install -g grunt-cli. Créez un fichier package.json avec le contenu suivant:

<code class="language-json">{
  "name": "grunt_tutorial",
  "description": "Grunt setup for web development.",
  "author": "Landon Schropp (http://landonschropp.com)",
  "dependencies": {
    "grunt": "0.x.x",
    "grunt-autoprefixer": "0.2.x",
    "grunt-contrib-clean": "0.5.x",
    "grunt-contrib-coffee": "0.7.x",
    "grunt-contrib-connect": "0.4.x",
    "grunt-contrib-copy": "0.4.x",
    "grunt-contrib-cssmin": "0.6.x",
    "grunt-contrib-jade": "0.8.x",
    "grunt-contrib-jshint": "0.6.x",
    "grunt-contrib-stylus": "0.8.x",
    "grunt-contrib-uglify": "0.2.x",
    "grunt-contrib-watch": "0.5.x"
  },
  "engine": "node >= 0.10"
}</code>

Cela définit votre projet et ses dépendances. Exécutez npm install pour les installer.

Copie de fichiers et construire un nettoyage

Maintenir le code source et construire des fichiers séparément. Créer un Gruntfile.js:

<code class="language-javascript">module.exports = function(grunt) {
  grunt.initConfig({
    copy: {
      build: {
        cwd: 'source',
        src: [ '**', '!**/*.styl', '!**/*.coffee', '!**/*.jade' ], // Exclude compiled files
        dest: 'build',
        expand: true
      },
    },
    clean: {
      build: { src: [ 'build' ] },
      stylesheets: { src: [ 'build/**/*.css', '!build/application.css' ] },
      scripts: { src: [ 'build/**/*.js', '!build/application.js' ] },
    },
  });

  grunt.loadNpmTasks('grunt-contrib-copy');
  grunt.loadNpmTasks('grunt-contrib-clean');

  grunt.registerTask('build', ['clean:build', 'copy']);
};</code>

Cette copie des fichiers de source vers build et nettoie le répertoire build. Exécuter grunt build.

(Les sections restantes détaillant le stylet, l'autopréfixer, la minification CSS, le coffeecript, la uglify, le jade, la montre et le serveur de développement suivraient une structure similaire d'extraits de code et d'explications, reflétant l'entrée d'origine, mais avec des modifications mineures de phrasation de phrasation mineure Pour atteindre la paraphrase.

Conclusion

Ce guide rationalisé fournit une base pour la construction de processus de construction robustes et efficaces basés sur des grognements. Explorez le vaste écosystème de plugin grogn pour personnaliser davantage votre flux de travail.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn