我目前正在使用 Visual Studio 2010 构建后事件来缩小我的 JavaScript 文件。问题是每次我添加新的 JavaScript 文件时,我都必须更新构建后事件。我想做的就是让脚本更加灵活一点。

目录结构:

\脚本\

  • 脚本1.debug.js
  • Script2.debug.js
  • Script3.debug.js

这是我的脚本的当前状态:

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

我希望这个脚本找到每个 *.debug.js 文件,将其缩小并将其输出到 *.js。我该如何实现这一目标?

Script1.debug.js --> Script1.js
Script2.debug.js --> Script2.js
Script3.debug.js --> Script3.js

有帮助吗?

解决方案

不要使用构建后事件。安装该工具后,添加了一个 MSBuild 任务,该任务会自动为项目中的 .js 文件运行压缩器。您需要对项目文件进行一些小改动。详细信息在此解释 博客文章.

其他提示

尝试这个:

@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

查找文件夹“js\”中的所有 javascript (*.js) 文件,然后从文件名中删除“.debug”(实际上用空字符串替换它)并运行 AjaxMin

创建批处理脚本文件来执行任务并从 PostBuild 事件调用批处理文件。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top