una paso pasar parametros nombradas llamada función funciones funcion foo español argumentos javascript node.js gruntjs

paso - pasar parametros a javascript



Programar sistemáticamente los argumentos para gruñir tarea? (2)

Tengo una tarea grunt que llama a otras tareas grunt. Quiero llamar a una subtarea con argumentos determinados programáticamente. es posible? Pasé un tiempo buscando entre lib / grunt.js y lib / grunt / task.js , pero no pude resolverlo.

Estoy usando grunt-compass con los siguientes argumentos especificados en Gruntfile.js :

compass: { default_options: { src: ''components/201'', dest: ''build'', require: [''zurb-foundation''] } }

Quiero poder anularlos en tiempo de ejecución:

tareas / my-task.js :

// simplified example module.exports = function(grunt) { grunt.registerTask(''foo'', ''bar'', function() { var chooseDest = doWork(); grunt.task.run(''compass'', {src: ''src'', dest: chooseDest}); }); };

Para referencia:

$ grunt --version grunt-cli v0.1.6 grunt v0.4.0rc6


Me lo imaginé. Use la sintaxis <%= %> en Gruntfile.js:

compass: { default_options: { src: ''components/<%= myTask.src %>'', dest: ''build'', require: [''zurb-foundation''] } }

Entonces puedes configurarlo en tu tarea:

grunt.config.set(''myTask.src'', getSrc());


Puedes editar toda la configuración de Grunt:

grunt.config(''compass.default_options.src'', ''blabla'');

Justo antes de ejecutar la tarea. Pero tu solución es "más limpia".