Подтвердить что ты не робот

Переключение между jquery-1.3.2.js и jquery-1.3.2.min.js

Когда я разрабатываю приложение, я хочу использовать jquery-1.3.2.js, и когда я его развертываю, я хочу использовать jquery-1.3.2.min.js?

Каков наилучший способ переключения между двумя без ручного комментирования и раскомментации.

Спасибо.

4b9b3361

Ответ 1

У меня есть метод расширения 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") %>

Ответ 2

Назовите оба файла jquery.js, например, и поместите в какую-нибудь папку (libs) Когда вы заявляете, не развертывайте папку lib.

Ответ 3

Я уверен, что кто-то может перевести этот ответ в asp.net: я выполняю условие, основанное на моем APPLICATION_ENVIRONMENT, определенном в моих проектах. Не уверен, есть ли аналогичная вещь в asp.net, но если вы находитесь на производственном сервере, вы можете служить .min - и на машине разработки/тестирования вы можете обслуживать полную библиотеку.

Ответ 4

Если вы программно добавляете объявление, лучше всего использовать

#if DEBUG

Директива компилятора. В области DEBUG используйте полностью расширенную библиотеку, а в не-DEBUG (при компиляции в режиме выпуска для публикации) введите версию .min. Тогда вам нужно только беспокоиться о том, что вы скомпилируете Release, когда будете жить.

Кроме того, у вас есть отдельные файлы .config для разных версий среды выпуска и укажите ваш javascript.

Ссылка MSDN на директивы компилятора.

Ответ 5

Вы можете назвать script как jquery.js. И добавьте еще два js файла. Сначала будет называться jquery.js.debug, другой onw jquery.js.release. И при компиляции приложения используйте соответствующий js файл.

Я использую его для изменения файлов web.config. Дополнительная информация может быть основана здесь.

Ответ 6

Если вы используете django, вы можете использовать django-compress, чтобы обрабатывать это автоматически.