ASP.NET MVC jQuery更新的最佳实践

Jos*_*osh 6 asp.net-mvc asp.net-mvc-4

历史

我创建了一个新的ASP.NET MVC 4.0项目,该项目是基本的,并且不包括默认情况下Intranet和Internet模板插入的jQuery或其他脚本.然后我使用NuGet添加脚本并安装了通常由MVC Intranet和Internet模板安装的所有jQuery和相关文件的最新版本.

当我尝试运行应用程序时,我开始收到错误.显然,与jQuery 1.9之前编写的库/扩展不兼容.似乎在解决了一个问题之后,我遇到了另一个问题.我终于放弃并复制了已经安装的js文件的版本.这解决了我能够使用远程验证等功能的问题.

问题

由于我是ASP.MVC的新手,我想知道最佳实践与jQuery更新有什么关系.我假设我需要等到所有库/扩展都赶上,但我需要遵循每个库/扩展的状态来确定何时可以升级.

  1. 是等待只是使用随MVC模板安装而不升级的版本更好吗?当MVC的下一次更新出来时,然后将这些库/扩展复制到更新模板使用的脚本文件夹中?
  2. 我注意到MVC模板不安装jQuery NuGet包,而是将文件安装到Content和Script文件夹.这是为了防止开发人员升级和遇到我使用较新版本的库/扩展时发现的问题吗?
  3. Microsoft是否会更新jquery.unobtrusive-ajax.js和相关库以更新ASP.NET MVC?如果是这样,那么在ASP.NET MVC更新之前阻止更新依赖关系似乎是有意义的.

cam*_*rch 2

jQuery.live()在 v1.9 中弃用了该方法。它可以替换为.on(). 这破坏了 jquery.unobtrusive-ajax.js。我从经验中知道,当我咒骂我第一次从 NuGet 中提取的更新时。

jquery.validate 有一个更新,这个线程中也提到了。但我还没有验证它,jquery 1.9.1 也可用。

对于您的问题...

  1. 我认为保持软件包最新是一个很好的做法,但也要研究任何已弃用的功能。使用一些类似源保存的工具也是一个好主意。您只需单击一两次鼠标即可轻松恢复任何重大更改。

  2. 即使没有将 \packages 文件夹添加到您的原始项目(内部或互联网)。如果您打开 NuGet 包管理器 UI,更新仍会显示。