Looking for gruntjs Answers? Try Ask4KnowledgeBase
Looking for gruntjs Keywords? Try Ask4Keywords

gruntjsEmpezando con los gruntjs


Observaciones

Esta sección proporciona una descripción general de qué es gruntjs y por qué un desarrollador puede querer usarlo.

También debe mencionar cualquier tema grande dentro de los gruñidos y vincular a los temas relacionados. Dado que la Documentación para gruntjs es nueva, es posible que deba crear versiones iniciales de esos temas relacionados.

Versiones

Versión Fecha de lanzamiento
0.3.0 2012-07-30
0.4.0 2013-02-17
0.4.1 2013-03-12
0.4.2 2013-11-20
0.4.3 2014-03-06
0.4.4 2014-03-13
0.4.5 2014-05-11
1.0.0 2016-04-04
1.0.1 2016-04-05

Ayuda

Ejecute grunt -h para ver lo siguiente:

  • Parámetros de línea de comando
  • Todas las tareas independientes disponibles en el archivo Grunt del directorio actual
  • Todas las subtareas de cada conjunto de tareas en el Gruntfile del directorio actual

Instalando Grunt

Prerrequisitos

Grunt requiere que Node.js y npm estén instalados. Si no tiene Node.js y / o npm instalados en su máquina, vaya a https://nodejs.org y descargue el instalador o el paquete para su sistema operativo.

Primera instalación

Si está instalando Grunt por primera vez, primero deberá instalar el paquete de interfaz de línea de comandos de Grunt grunt-cli globalmente.

npm install -g grunt-cli

Esto instala la interfaz de línea de comandos para Grunt globalmente para que pueda ejecutar la versión local de Grunt en su proyecto.

Puede verificar que tiene el paquete grunt-cli instalado ejecutando el siguiente comando:

grunt --version
 

Esto debería imprimir al menos la versión actual de su paquete grunt-cli .

Instalando Grunt en tu proyecto

Después de haber grunt-cli en funcionamiento, se puede instalar el real grunt corredor de tareas y su primer paquete ronco grunt-contrib-jshint :

npm install grunt --save-dev
npm install grunt-contrib-jshint --save-dev

Esto descarga los paquetes desde el administrador de paquetes de NPM y los guarda como devDependencies en su archivo package.json .

Gruntfile

A continuación, necesita un Gruntfile.js en la raíz de su proyecto que actúa como un archivo de configuración para las tareas Grunt:

module.exports = function(grunt) {

    grunt.initConfig({
        jshint: {
            files: ['Gruntfile.js'],
        }
    });

    grunt.loadNpmTasks('grunt-contrib-jshint');


    grunt.registerTask('default', ['jshint']);
};

Este archivo hace tres cosas:

  1. Le dice a Grunt que cargue la tarea grunt-contrib-jshint del paquete NPM
  2. Le advierte a la tarea jshint que se ejecute en el archivo Gruntfile.js
  3. Crea una tarea Grunt llamada por default que ejecuta la tarea jshint

Grunt corriendo

Una vez que haya configurado su proyecto, puede ejecutar la tarea default de Grunt llamando a:

grunt

Esto activa grunt-cli que ejecuta el grunt local que busca una tarea Grunt llamada por default que está configurada para ejecutar la tarea llamada jshint .

Tareas en ejecución

Tareas en configuración

Todos los atributos de grunt.initConfig son tareas válidas, por lo que si su archivo Grunt se ve así:

module.exports = function(grunt) {

    grunt.initConfig({
        jshint: {
            files: ['Gruntfile.js'],
        }
    });

    grunt.loadNpmTasks('grunt-contrib-jshint');


    grunt.registerTask('default', ['jshint']);
};
 

El comando de shell $ grunt jshint ejecutará la tarea jshint .

Tareas con objetivos

Las tareas pueden tener diferentes objetivos. Toma este fragmento de código, por ejemplo:

    grunt.initConfig({
        jshint: {
            gruntfile: {
                files: ['Gruntfile.js']
            },
            project: {
                files: 'src/**/*.js'
            }
        }
    });
 

Aquí, jshint puede apuntar al gruntfile o a todos los archivos JavaScript de su proyecto. Si ejecutamos $ grunt jshint , se utilizarán ambos objetivos, pero si ejecutamos $ grunt jshint:gruntfile el $ grunt jshint:gruntfile solo se aplicará al gruntfile.

Tareas registradas

Las tareas predeterminadas registradas como esta grunt.registerTask('default', ['jshint']); se ejecutará con el comando shell $ grunt .

Las nuevas tareas registradas se ejecutarán pasando su nombre como un argumento de línea de comando para gruñir. Por ejemplo:

grunt.registerTask('gruntfile', ['jshint:gruntfile']);
 

Se ejecutará con $ grunt gruntfile .