Как я могу вручную обновить пользовательский интерфейс jQuery, установленный через пакет NuGet?

Ситуация

Я работаю над проектом ASP.NET Web Forms, созданным с использованием стандартного шаблона проекта Visual Studio 2012. С тех пор я использовал NuGet для установки jQuery UI версии 1.10.0.

Мне нужно обновить jQuery UI 1.10.1, потому что мне нужно исправить ошибку. Согласно веб-сайту, 1.10.1 является текущей стабильной версией. Однако для этой версии нет пакета NuGet!

Я не знаю, почему пакет NuGet отстает от последней доступной стабильной версии от команды пользовательского интерфейса jQuery на их веб-сайте. (Да, я понимаю, что, вероятно, есть другая команда, управляющая самим пакетом nuget... но по-прежнему кажется, что его нужно поддерживать в актуальном состоянии.... или ценность установки jQuery через NuGet очень ограничена. .)

Вопрос

Как вручную обновить пользовательский интерфейс jQuery (установленный как пакет NuGet) до версии 1.10.1 в моем проекте?

Я уже загрузил последние файлы javascript версии 1.10.1. Теперь... когда я заглядываю в свой проект веб-форм ASP.NET, я вижу следующие файлы в папке Scripts:

Существующие файлы jQuery

Итак, что мне здесь делать... удалить следующие два файла?

  • jquery-ui-1.10.0.js
  • jquery-ui-1.10.0.min.js

...и заменить этими новыми файлами?

  • jquery-ui-1.10.1.js
  • jquery-ui-1.10.1.min.js

Похоже, это не сработает.

Способ включения jQuery в мою мастер-страницу (из шаблона по умолчанию, созданного Visual Studio 2012) выглядит следующим образом:

MasterPage jQuery включает

Этот пакет JS, который вы видите выше, называется "jquery.ui.combined" автоматически генерируется каким-то скрытым кодом. Идите вперед и просмотрите свой проект... вы не найдете ничего очевидного, что этот пакет определен. Поэтому, если я добавлю последние файлы JS... кажется, у меня нет возможности определить, используются ли они или связаны вообще. Это не та версия, которую ожидает логика/код пакета NuGet!!!

Есть идеи?

Еще одна потенциальная проблема

Когда я скачал jQuery UI 1.10.1, он также поставлялся с jQuery Core 1.9.1. Как вы увидите выше в моей папке Scripts, создается впечатление, что jQuery UI 1.10.0 идет рука об руку с jQuery Core 1.9.0. Если я обновлю пользовательский интерфейс jQuery..... нужно ли мне также обновлять до соответствующего ядра jQuery? (Это отдельные пакеты NuGet)

Пожалуйста, ответьте на этот вопрос конкретно

Я хотел бы, чтобы ответ объяснил, как вручную обновить версию пользовательского интерфейса jQuery, установленную из пакета NuGet.... в проекте ASP.NET Web Forms.

Я думаю, что это было бы полезно, чтобы в будущем разработчик мог получать последние исправления ошибок, как только они будут включены в стабильную версию на веб-сайте пользовательского интерфейса jQuery .... без необходимости ждать, пока пакет появится на фид NuGet.


person ClearCloud8    schedule 28.02.2013    source источник


Ответы (3)


Команда пользовательского интерфейса jQuery не загрузила версию 1.10.1 для своего пакета. Боюсь, вам просто нужно подождать, пока они не выпустят его.

Если вы не можете ждать, вы можете сначала удалить текущую версию пользовательского интерфейса jQuery, а затем вручную добавить в свой проект файлы сценариев версии 1.10.1.

person superkinhluan    schedule 28.02.2013
comment
Спасибо за ответ. Я не думаю, что смогу просто удалить пакет jQuery nuget.... потому что с проектом веб-форм ASP.NET он по умолчанию настроен с четырьмя пакетами jQuery nuget. AspNet.ScriptManager.jQuery.UI.Combined, AspNet.ScriptManager.jQuery, jQuery и jQuery UI (комбинированная библиотека)...... Затем главная страница по умолчанию ссылается на них в порядке, который кажется важным. Я полагаю, что удаление пакетов jQuery nuget (всех четырех) вызовет всевозможные проблемы. - person ClearCloud8; 01.03.2013
comment
Можете ли вы дополнить свой ответ, включив в него сведения о том, как удалить текущую версию пользовательского интерфейса jQuery, не нарушая проект веб-форм ASP.NET по умолчанию? (Например, какой из этих четырех пакетов nuget, которые я перечислил, следует удалить? Какие потребуются изменения главной страницы по умолчанию?) - person ClearCloud8; 01.03.2013
comment
Если вы хотите обновить только jQuery.UI, вам нужно удалить только пакет пользовательского интерфейса jQuery и оставить остальные 3 нетронутыми. - person superkinhluan; 04.03.2013
comment
Дело в том, что из этих 4 установленных по умолчанию пакетов nuget... два из них упоминают пользовательский интерфейс jQuery. Один называется AspNet.ScriptManager.jQuery.UI.Combined. Другой называется jQuery UI (комбинированная библиотека). Я думаю, я могу просто удалить два из них и посмотреть, что сломается. Я боюсь, что создам какую-нибудь странную ошибку, если код Microsoft полагается на целостность этих двух пакетов. Особенно ScriptManager! Я даже не знаю конкретно, почему есть два, связанных с пользовательским интерфейсом jQuery.. За исключением того, что Хао Кунг упомянул здесь что-то о дедупликации: stackoverflow.com/ а/12308618/940783 - person ClearCloud8; 04.03.2013

Обходной путь... хотя это кажется плохим подходом....

Я только что открыл эти файлы....

  • jquery-ui-1.10.0.js
  • jquery-ui-1.10.0.min.js

... и заменили содержимое содержимым из этих файлов:

  • jquery-ui-1.10.1.js
  • jquery-ui-1.10.1.min.js

Я оставил имена файлов такими, какие они были. Таким образом, несмотря на то, что файлы JavaScript называются версией «1.10.0»... они на самом деле содержат код версии «1.10.1».

Одна из причин, почему я думаю, что это ужасная идея

Что произойдет, если какой-либо другой разработчик попытается извлечь мой код из системы управления версиями... и он использует диспетчер пакетов NuGet для восстановления пакетов, которых у них еще не было. Разве он не извлечет пакет jQuery UI nuget и не заменит файлы JavaScript, которые я изменил, файлами из пакета nuget? Затем страница снова начинала демонстрировать ошибки, и никто не знал, почему.

По крайней мере.... пока я могу продолжить разработку с исправленной ошибкой! Это очень раздражало... оверлей появлялся поверх диалогового окна, и я не мог взаимодействовать со страницей. Вот исправленная ошибка: http://bugs.jqueryui.com/ticket/8984

person ClearCloud8    schedule 28.02.2013

Перейдите: Visual Studio -> Инструменты => Пакет библиотеки => И откроется окно настроек диспетчера пакетов с параметрами, как на снимке экрана Nuget  Добавление пакета вручную

Нажмите кнопку «Добавить» (+) в правом верхнем углу и внутри исходного браузера в папку с любым пакетом Nuget, который у вас есть. Имя - то, что вы хотите, и нажмите «ОК».

Теперь вы можете увидеть свой пакет в окне расширений и обновлений

Для установки в текущем проекте

используйте консоль диспетчера пакетов: Install-Package И имя вашего пакета

person Vishal Sharma    schedule 29.03.2013