Когда я разрабатываю приложение, я хочу использовать jquery-1.3.2.js, и когда я его развертываю, я хочу использовать jquery-1.3.2.min.js?
Каков наилучший способ переключения между двумя без ручного комментирования и раскомментации.
Спасибо.
Когда я разрабатываю приложение, я хочу использовать jquery-1.3.2.js, и когда я его развертываю, я хочу использовать jquery-1.3.2.min.js?
Каков наилучший способ переключения между двумя без ручного комментирования и раскомментации.
Спасибо.
У меня есть метод расширения HtmlHelper для загрузки файлов JavaScript. Это выглядит примерно так...
public static string JavascriptTag(this HtmlHelper html, string javascriptName)
{
var format = "<script src=\"/Content/Scripts/{0}.js\" type=\"text/javascript\"></script>\r\n";
#if (!DEBUG)
javascriptName += ".min";
#endif
return string.Format(format, javascriptName);
}
Что называется очень просто:
<%= Html.JavascriptTag("jquery-1.3.2") %>
<%= Html.JavascriptTag("general") %>
Я могу использовать это соглашение, потому что у меня также есть задача сборки, которая принимает все файлы JS внутри моего каталога содержимого/скриптов, их минимизирует, а затем вставляет .min в имя файла.
Если у вас нет такой роскоши, вы можете использовать такой вариант:
public static string JavascriptTag(this HtmlHelper html, string devFileName, string liveFileName)
{
var format = "<script src=\"{0}\" type=\"text/javascript\"></script>\r\n";
var fileNameToUse = devFileName;
#if (!DEBUG)
fileNameToUse = liveFileName;
#endif
return string.Format(format, fileNameToUse );
}
Что можно было бы назвать так:
<%= Html.JavascriptTag("/Content/Scripts/jquery-1.3.2.js", "/Content/Scripts/jquery-1.3.2.min.js") %>
<%= Html.JavascriptTag("/Content/Scripts/general.js", "/Content/Scripts/general.min.js") %>
Дополнительный бонус вышеприведенного подхода заключается в том, что вы можете использовать CDN для библиотек, например
<%= Html.JavascriptTag("/Content/Scripts/jquery-1.8.2.js", "http://ajax.aspnetcdn.com/ajax/jQuery/jquery-1.8.2.min.js") %>
Назовите оба файла jquery.js, например, и поместите в какую-нибудь папку (libs) Когда вы заявляете, не развертывайте папку lib.
Я уверен, что кто-то может перевести этот ответ в asp.net: я выполняю условие, основанное на моем APPLICATION_ENVIRONMENT
, определенном в моих проектах. Не уверен, есть ли аналогичная вещь в asp.net, но если вы находитесь на производственном сервере, вы можете служить .min - и на машине разработки/тестирования вы можете обслуживать полную библиотеку.
Если вы программно добавляете объявление, лучше всего использовать
#if DEBUG
Директива компилятора. В области DEBUG используйте полностью расширенную библиотеку, а в не-DEBUG (при компиляции в режиме выпуска для публикации) введите версию .min. Тогда вам нужно только беспокоиться о том, что вы скомпилируете Release, когда будете жить.
Кроме того, у вас есть отдельные файлы .config для разных версий среды выпуска и укажите ваш javascript.
Вы можете назвать script как jquery.js. И добавьте еще два js файла. Сначала будет называться jquery.js.debug, другой onw jquery.js.release. И при компиляции приложения используйте соответствующий js файл.
Я использую его для изменения файлов web.config. Дополнительная информация может быть основана здесь.
Если вы используете django, вы можете использовать django-compress, чтобы обрабатывать это автоматически.