【问题标题】:AngularJS and jQuery... What's wrong with using both?AngularJS 和 jQuery……两者都用有什么问题?
【发布时间】:2015-08-20 00:53:47
【问题描述】:

我看到一些博客文章说 AngularJS 和 jQuery 可以在一个应用程序中一起使用。这似乎很好,因为 jQuery 具有 Angular 所没有的一些功能,并且 Angular 允许我们为 Web 应用程序制作结构化的逻辑。

事实上,由于我是法国人,所以我也会查看有关此的法国博客文章,而法国人倾向于说我们永远不应该同时使用 jQuery 和 Angular。我在论坛上问为什么,人们说这可能是因为初学者通常将 jQuery 和 Angular 用于相同的事情:动态添加元素,使用 ajax 请求等......但我想将 jQuery 用于 Angular 不做的一些事情并允许引导 js 在我的应用程序上运行。

您认为 jQuery 和 Angular 在一个应用程序中协同工作的能力如何?还是仅仅取决于我们如何让它们协同工作?

【问题讨论】:

  • 可以将 jQuery 与 Angular 一起使用,只要 jQuery 专门用于操作 DOM,就像您使用 jqLit​​e 一样。否则你可能会破坏 Angular 强加的结构。
  • 我在一些项目中同时使用了 angular 和 jquery,但我从来没有遇到过问题。避免这种情况的唯一原因是,Angular 实现了 jquery 的基本功能,所以它是带宽的一些 kbs 的腰部;)
  • Angular 和 jQuery 可以一起使用。事实上,Angular 有自己的 jQuery 实现,称为 jqLit​​e,它具有 jQuery 的一部分特性。从概念上讲,Angular 是 jQuery 之上的一个层。您在角度指令中使用 jQuery。
  • 好的,谢谢!我想将 jQuery 用于 bootstrap.js 并在某个特定时刻检测滚动位置,角度仍在管理应用程序
  • @sdgluck:取决于什么样的操作。 jquery 通常用于的大部分工作,都可以通过 ng-show、ng-class 等来完成。

标签: javascript jquery angularjs


【解决方案1】:

AngularJS 使用 JQuery 本身,不混搭的主要原因就是你描述的它们互相踩脚尖。

虽然我很多时候都在学习 Angular,但我最终还是将 JQuery 与它一起使用,因为我不了解 Angular 或不知道它的全部功能。在更好地学习它之后,我的代码中的 JQuery 不断减少,但如果我无法从角度理解它,我会确保它与 JQuery 一起工作,直到我能得到它。

【讨论】:

  • 我避免使用 jquery 的主要原因是不要以非角度的方式实现代码。就像寻找子元素而不是指令一样。
【解决方案2】:

我想这取决于你的目标。如果你想开发一个 Angular 应用程序,那么 Angular 已经包含了一个名为 jQlite 的 jQuery 版本,但是如果你愿意的话,你仍然可以在你的 Angular 应用程序中使用 jQuery。

您实际上可以将 jQuery 代码“包装”到自定义 Angular 指令中,这非常棒。

如果你想实现一些 Bootstrap 功能,在 Angular 应用程序中包含 jQuery 是安全的。目前,我这样做是为了实现 Bootstrap 的折叠组件。我才刚刚开始在 Angular 中进行开发,所以对于将 jQuery 与 Angular 结合使用的所有细节,我并不是专家。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2011-11-14
    • 2012-12-02
    • 1970-01-01
    • 1970-01-01
    • 2010-12-12
    • 2012-07-19
    • 2019-05-09
    • 1970-01-01
    相关资源
    最近更新 更多