我们的Web应用程序可以同时使用jQuery和AngularJS吗?

7
我们的网站可以同时使用jQuery和AngularJS吗?我读到过一些建议不要在一个项目中同时使用两个库,因为它们有不同的生命周期。
我们的需求是使用ASP.NET WebApi和AngularJS来构建响应式的网站;现在,为了使网站响应式,我们希望使用Bootstrap,而Bootstrap需要同时引入Bootstrap CSS和jQuery库;那么,我们应该在项目中加入jQuery库和AngularJS库吗?
3个回答

5

可以使用jQuery,但不建议这样做,因为jQuery会增加很多开销。 如果按照“Angular的方式”编写代码,则不会破坏Angular的功能。例如,如果您尝试调整字段的值,那么在手动触发脏检查之前,作用域不会更新。这会导致垃圾代码和不一致的行为。

Angular是否使用jQuery库?

是的,Angular可以使用jQuery,如果在应用程序启动时存在jQuery,则可以使用它。如果您的脚本路径中没有jQuery,则Angular会回退到我们称为jQLite的jQuery子集的自己实现。

Angular 1.3仅支持jQuery 2.1或更高版本。jQuery 1.7及更高版本可能与Angular正常工作,但我们不能保证。

来源

此外,请参阅以下问题:我们应该在AngularJS中使用jQuery吗?

如果您确实非常确定要使用jQuery,请确保首先包含jQuery脚本。然后,Angular将在JQ Lite的位置加载jQuery。


“Should we use JQuery with AngularJS”这个链接相当无用,因为它们讨论的是将网站从JQuery迁移到AngularJS,而不是JQuery是否与Angular兼容。” - Kellen Stuart

2

是的,您可以在同一个项目中使用Jquery和AngularJS。根据AngularJS文档

Angular是否使用jQuery库?

是的,如果在应用程序引导时存在jQuery,则Angular可以使用jQuery。如果您的脚本路径中没有jQuery,Angular将退回到我们称之为jQLite的jQuery子集的自己的实现。

Angular 1.3仅支持jQuery 2.1或更高版本。 jQuery 1.7及更高版本可能与Angular正常工作,但我们不保证。

您还需要记住:

如果jQuery可用,则angular.element是jQuery函数的别名。如果jQuery不可用,则angular.element委托给Angular内置的jQuery子集。

如果您想在项目中使用任何Jquery插件,请确保将它们转换为Angular指令。


0

你可以将JQuery与AngularJS一起使用。AngularJS还有一个轻量级版本JQLite,其中包含AngularJS项目所需的所有JQuery功能。

首先建议使用纯AngularJS,但如果由于某种原因仅使用AngularJS不足够,您可以使用JQuery来填补空缺。如果您选择在AngularJS旁边使用JQuery,则必须开始考虑到AngularJS视图之外的所有操作都需要额外思考,因为如果AngularJS不知道更改,它将不会将该更改应用于任何内容。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接