Needed - Visual Studio Custom Build Actions для минимизации JS и CSS
Я использовал Combres в своих приложениях для сжатия, объединения и минимизации javascript и css во время выполнения. Это работает очень хорошо и отлично удовлетворяет YSlow.
Теперь я переосмысливаю весь процесс по соображениям производительности, и я больше думаю об этом во время сборки, а не во время выполнения.
Я надеюсь, что смогу получить небольшой совет о том, как это сделать без лишних хлопот. Есть ли существующий инструмент (похожий на Combres), который может делать то, что мне нужно?
Ответы
Ответ 1
Я изначально использовал Chirpy, чтобы сделать свою привязку, но с тех пор перешел на Bundler. Bundler позволяет с легкостью подключить все, что угодно, в сексуальном файле сборки (powershell). Я лично отошел от событий Visual Studio Build и начал запускать сборки в автономной среде. Это помогает мне с такими вещами, как Github в Team City Непрерывная интеграция (CI).
Здесь может выглядеть ваш файл сборки. (примечание может не выполняться полностью, это не проверено)
build.ps1
# Set up varriables for build script
$invocation = (Get-Variable MyInvocation).Value
$directorypath = Split-Path $invocation.MyCommand.Path
$BundlerDir = "$directorypath\build_tools\bundler\"
$AppRoot = "$directorypath\SomeApp.Web\"
$ScriptsDir = "scripts\"
$CssDir = "css\"
# Run Bundler to Combine and Minify
&($BundlerDir + "node.exe") ( $BundlerDir + "bundler.js") ($AppRoot +$CssDir) ($AppRoot + $ScriptsDir)
# Everything else...
# Clean the bins
# Build the projects
# Run the tests
Ответ 2
Знакомство с Chirpy
![alt text]()
Chirpy Mashes, уменьшает и проверяет ваши файлы javascript, stylesheet и dotless.
Чирпи - чиппи. Используйте Google Closure Tools или YUI Compressor для .Net, чтобы минимизировать и размять все ваши драгоценные активы. Это легко, гибко и автоматически.
Дополнительная информация здесь или на сайте CodePlex
Ответ 3
Проект задач сообщества MSBuild имеет задачу JSCompress. Посмотрите проект здесь: http://msbuildtasks.tigris.org/
Вот еще один ресурс о том, как реализовать эту задачу: http://www.justise.com/2007/04/20/javascript-and-css-compression-in-msbuild/
Ответ 4
Вы также можете взглянуть на ajaxtoolkit, у них есть 2 задачи для сжатия JS.