7

根据 Bootstrap 3 文档 ( http://getbootstrap.com/javascript/),Bootstrap 3 的 js 组件依赖于 jQuery。

插件依赖

一些插件和 CSS 组件依赖于其他插件。如果您单独包含插件,请确保在文档中检查这些依赖项。另请注意,所有插件都依赖于 jQuery(这意味着 jQuery 必须包含在插件文件之前)。

我正在研究使用 Angular.js,每个人都说“放弃 jQuery!” 似乎 Angular 团队对 Bootstrap v2.3.2 ( http://angular-ui.github.io/bootstrap/ ) 进行了审查。Bootstrap 3有什么类似的或解决方法吗?我暂时只需要使用 jQuery 吗?

谢谢

4

2 回答 2

3

一些东西:

如果您还没有在 Angular 中制作过玩具应用程序,我强烈建议您这样做。您将更好地了解您需要进行多少学习/移植,以及它将如何满足您的需求。

(我认为人们并不完全同意这一点,但这是我的两分钱:)就 drop jQuery 而言,只要您将所有 DOM 操作保留在指令中,包装 jQuery 小部件就没有问题(当您足够好来编写自己的指令),因为这样 jQuery 将被隔离到仅用于表达模型的方式。然后,当 Angular 社区开始在插件和扩展方面赶上 jQuery 时,您可以开始重构视图以不使用依赖于 jQuery 的指令,然后您就可以完全放弃依赖。

此外,世界已经在 Bootstrap 2 和 Angular 插件中幸存了一段时间 - 3 中是否有你需要的东西,你不能没有?我相信你现在已经知道了——更新并不总是更好;你不应该修复没有损坏的东西;等等

于 2013-08-27T03:40:58.837 回答
3

与其说是放弃 jQuery,不如说是放弃了命令式思维方式。“Angular 方式”是首先定义组件(指令、服务等),然后在您的应用程序中以声明方式组合这些组件。

如果你需要来自 jQuery 的特别闪亮的东西,你可以将它包装在一个指令中并以声明方式使用它。

所以而不是:

$('.elements-of-interest').addSparklyThing();

您创建了一个闪亮的东西指令,也许作为一个属性:

<div sparkly-thing>foo</div>

在第一种情况下,我以命令式的方式给出一系列指令。在第二种情况下,我只是声明这个div 也是一个闪闪发光的东西。

如果我有jQuery背景?

于 2013-08-27T03:52:28.750 回答