Como criar várias tarefas com o Grunt?

Várias tarefas são o que a maioria dos complementos fornece, você fornece um espaço para nome e código para executar essas tarefas. ¿ Como para criar várias tarefas com Grunt ?

O Grunt.js fornece dois tipos de tarefas: tarefas básicas e várias tarefas . As tarefas básicas são pouco mais que uma função javascript nomeada que você pode executar na linha de comando.

Em seguida, o usuário instancia essas tarefas colocando as opções em um objeto de configuração com o mesmo nome.

Como criar várias tarefas com o Grunt?

Quando uma tarefa múltipla é executada, o Grunt procura uma propriedade com o mesmo nome na configuração. Múltiplas tarefas podem ter várias configurações, definidas usando arbitrariamente denominado ” objetivos “.

Ao especificar uma tarefa e um objetivo como grunt concat: foo ou grunt concat: bar, apenas a configuração do objetivo especificado será processada, enquanto a execução do grunt concat será repetida em todos os objetivos.

Processando-os por sua vez. Observe que, se uma tarefa tiver sido renomeada com grunt.task.renameTask , o Grunt procurará uma propriedade com o novo nome da tarefa no objeto de configuração.

A maioria das tarefas contribuições, incluindo a tarefa jshint complementar grunhido-contrib-jshint e complementar tarefa concat grunhido-contrib-concat são multitarefa.

grunt.registerMultiTask (taskName, [descrição,] taskFunction)

Dada a configuração especificada, este exemplo de multitarefa registraria foo: 1,2,3 se o Grunt fosse executado através do grunt log: foo.

Ou registre o bar: olá mundo se o Grunt executar o log do grunt: bar. No entanto, se o Grunt funcionar como um registro do grunhido, foo: 1,2,3 será registrado e então bar: hello world e baz: false.

grunt.initConfig ({
Iniciar sessão: {
foo: [1, 2, 3],
bar: 'olá mundo',
baz: fake
}
});

grunt.registerMultiTask ('log', 'Log stuff.', function () {
grunt.log.writeln (this.target + ':' + this.data);
});

Após inicializar

O Grunt fornece uma lista padronizada de arquivos src / destino nesse arquivo . Copiamos a matriz this.files em um arquivo de variável local usando fatia, pois vamos modificar a matriz.

Relacionado:  Como configurar o APN da Movistar para ter Internet grátis

Queremos processar cada arquivo, mas não podemos usar um loop normal, pois nosso processamento é assíncrono. Em vez disso, definimos a função de processo que, se a matriz de arquivos estiver vazia.

Ele diz ao grunhido que terminamos e ele volta. Caso contrário, leia a primeira fonte, execute-a no zlib para compactá-la e reescrevê-la. Após compactar o arquivo, repita o processo de chamada de compactação.

Um aspecto a ter em mente é que, em vez de usar a função de arquivo do nó, usamos funções como grunt.file.write.

Às vezes, eles fornecem uma boa quantidade de açúcar no topo do nó , mas também permitem que o grunhido implemente certas funções.

Como não gravar arquivos se o grunt for executado com –no-write. Se você começar a escrever sua própria lição de casa e, principalmente, se quiser redistribuí-la, familiarize-se com os documentos da API Grunt e use os auxiliares que ela fornece.

 

Você pode estar interessado:

Deixe um comentário