【问题标题】:How to include jQuery to my app?如何将 jQuery 包含到我的应用程序中?
【发布时间】:2015-06-19 12:48:37
【问题描述】:

我正在开发基于angular gulp generator 的应用程序。我想使用angular-uibootstrap 组件。我能够构建应用程序,但生成的 index.html 文件包含用于 boostrap、角度 ui 的 script 标签,但这里缺少 jquery。

我在 bower.js 文件中有 jquery,我运行了 bower install 命令。它安装在bower_components 目录中。

浏览器控制台包含错误

Error: Bootstrap's JavaScript requires jQuery
throw new Error('Bootstrap\'s JavaScript requires jQuery')

是否需要向 Angular 应用程序注入查询,或者为什么会发生错误?

【问题讨论】:

    标签: javascript jquery angularjs gulp bower


    【解决方案1】:

    问题是亲爱的你正在使用需要 jquery 的 Bootstrap js。

    Angular-ui 网站上明确说只需要 bootstrap css 和 anugular js。

    唯一需要的依赖项是:

    AngularJS(需要 AngularJS 1.3.x,用 1.3.13 测试)。 0.12.0 是 该库的最后一个支持 AngularJS 1.2.x 的版本。

    引导 CSS(使用 3.1.1 版测试)。这个版本的库 (0.13.0) 仅适用于 3.x 版中的 Bootstrap CSS。 0.8.0 是 这个库的最后一个版本,在版本中支持 Bootstrap CSS 2.3.x.

    所以根据你的问题。

    是否需要向 Angular 应用程序注入查询,或者为什么会出现错误 发生了吗?

    在 Angular js 的上下文中根本没有必要。

    它显示错误,因为您使用的是 boostrap js,您必须在加载之前添加 jquery。根据引导程序。 Link

    插件依赖 一些插件和 CSS 组件依赖于其他的 插件。如果您单独包含插件,请务必检查 文档中的这些依赖项。另请注意,所有插件都依赖于 jQuery(这意味着必须在插件文件之前包含 jQuery)。 请查阅我们的 bower.json 以了解支持的 jQuery 版本。

    默认情况下 angular 使用 jqulite 但如果你在加载 angular js 之前添加 jquery 它将使用 jquery。

    希望对你有帮助:)。

    【讨论】:

    • 它在从bower.js 中删除jquery 并运行gulp 命令后工作。
    【解决方案2】:

    来自FAQs

    Angular 是否使用 jQuery 库?

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

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

    使用 jQLite。猜猜这就是你的解决方案。

    【讨论】:

      【解决方案3】:

      这应该可以解决您的问题bower install jqlite --save

      【讨论】:

      • 我安装了jqlite。它包含在生成的index.html 中,但错误并没有消失。
      • 不,我从 bower.js 中删除了 jquery 依赖项。
      猜你喜欢
      • 2017-02-02
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-01-07
      • 2017-10-20
      相关资源
      最近更新 更多