Como melhorar este evento pós-construção do Visual Studio que está usando ajaxmin.exe

StackOverflow https://stackoverflow.com/questions/4044913

  •  27-09-2019
  •  | 
  •  

Pergunta

Atualmente, estou usando o evento pós-construção do Visual Studio 2010 para minimizar meus arquivos JavaScript. O problema é que toda vez que adiciono um novo arquivo JavaScript que preciso atualizar o evento de compilação de postagem. O que eu quero fazer é tornar o script um pouco mais flexível.

Estrutura do diretório:

Scripts

  • Script1.debug.js
  • Script2.debug.js
  • Script3.debug.js

Aqui está o estado atual do meu script:

ajaxmin.exe "$(ProjectDir)Scripts\Script1.debug.js" -out "$(ProjectDir)Scripts\Script1.js" -clobber
ajaxmin.exe "$(ProjectDir)Scripts\Script2.debug.js" -out "$(ProjectDir)Scripts\Script2.js" -clobber
ajaxmin.exe "$(ProjectDir)Scripts\Script3.debug.js" -out "$(ProjectDir)Scripts\Script3.js" -clobber

Eu quero que este script encontre todos os arquivos *.debug.js minifi -lo e emitir para *.js. Como faço para conseguir isso?

Script1.debug.js -> script1.js
Script2.debug.js -> script2.js
Script3.debug.js -> script3.js

Foi útil?

Solução

Não use um evento de pós -construção. Após a instalação da ferramenta, foi adicionada uma tarefa MSBuild que executa o minifiador automaticamente para um arquivo .js em seu projeto. Você precisa de um pouco de cirurgia menor para o arquivo do projeto. Os detalhes são explicados neste Postagem do blog.

Outras dicas

Experimente isso:

@echo off

for /r "js\" %%i IN (*.js) do (
    call :Sub %%~fi
)

:Sub
set debug=%*
set release=%debug:.debug=%
AjaxMin.exe -hc "%debug%" -o "%release%" -clobber

Encontre todos os arquivos javascript (*.js) na pasta "js " depois remova ".debug" do nome do arquivo (realmente substitua -o por string null) e execute ajaxmin

Crie um arquivo de script em lote para executar a tarefa e ligue para o arquivo em lote do seu evento Postbuild.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top