我正在使用ajaxmin来缩小所有JS文件。所有工作都很完美,但我对生成输出文件的方式没有什么问题。
当前发生的事情是JS文件在其路径旁边被缩小。例如,如果原始路径为includes/js/test.js,则在includes/js/test.min.js.处将其缩小
我希望我的所有js文件在不同的位置缩小,而不是原来的位置。例如,我的所有js文件都在includes/js/JSFILESHERE下,我希望这些js文件在includes/minifiedjs/MINIFIEDJSFILESHERE.中被缩小
我正在使用下面的代码。
<Import Project="$(MSBuildExtensionsPath)\Microsoft\MicrosoftAjax\AjaxMin.tasks" />
<Target Name="AfterBuild">
<ItemGroup>
<JS Include="\js\*.js" Exclude="**\*.min.js;" />
</ItemGroup>
<AjaxMin JsSourceFiles="@(JS)" JsSourceExtensionPattern="\js\.js$" JsTargetExtension=".min.js"/>
</Target>请帮帮忙。
发布于 2013-08-21 13:10:07
很抱歉对这个问题答复得太晚了。
这是我在我的项目中使用的解决方案-
<Target Name="AfterBuild">
<PropertyGroup>
<DestinationPath>$(MSBuildProjectDirectory)\build-publish</DestinationPath>
</PropertyGroup>
<ItemGroup>
<JS Include="Scripts\app\**\*.js" Exclude="**\*.min.js;Scripts\*.js" />
</ItemGroup>
<Copy SourceFiles="@(JS)" DestinationFiles="@(JS -> '$(DestinationPath)\%(RecursiveDir)%(Filename).src%(Extension)')" Condition="'%(Extension)'=='.js'">
<Output ItemName="JavaScriptFiles" TaskParameter="DestinationFiles" />
</Copy>
<AjaxMin JsSourceFiles="@(JavaScriptFiles)" JsSourceExtensionPattern="\.src.js$" JsTargetExtension="min.js" SourceMapType="V3">
</AjaxMin>
这里首先将文件复制到目标文件夹(递归),然后在其上应用迷你化。我需要源图文件,所以我保留我的原始文件,但如果你不需要源文件,那么你可以删除源文件后,缩小完成。
https://stackoverflow.com/questions/17146832
复制相似问题