【问题标题】:Bower, Grunt, Bootstrap, Jquery and JavaScript ErrorsBower、Grunt、Bootstrap、Jquery 和 JavaScript 错误
【发布时间】:2016-02-07 05:25:35
【问题描述】:

我是 Bower 和 Grunt 的新手,正在尝试将其集成到我的工作流程中。

我已经使用 Bower 安装了 Bootstrap,并且我已经安装了 grunt-bower-concat grunt 任务,用于连接我的 Bower 组件并将它们部署在我的 src 文件夹中的单个 js / css 文件中。

所有这些都有效;但是,在引用了我生成的 _bower.js 之后,我在控制台中看到了“Bootstrap 的 JavaScript 需要 jQuery”。查看有问题的代码,我可以看到它在抱怨,因为 typeof(jQuery) === undefined。

据我所知,jQuery 已在此文件的前面定义 - 所以我不确定它为什么会抱怨。

我做错了什么?

【问题讨论】:

  • 这是因为在你的拼接中,你没有按照jQuery和Bootstrap的顺序。在gruntfile.js中,将jQuery放在bootstrap js文件之前,因为jQuery是bootstrap的依赖!
  • 感谢法扎德 YZ!我手动指定了我希望包含在连接中的组件,并将 jquery 指定为引导依赖项,现在一切正常!我很困惑为什么依赖项/排序不是从组件本身不言而喻的。
  • 还有@FarzadYZ,如果您发表评论作为答案,我会接受。
  • 您必须在 grunt-bower-concat 中手动指定连接顺序?听起来好像还有其他事情发生。你能至少张贴你的 Gruntfile 给我看吗?

标签: jquery twitter-bootstrap gruntjs bower


【解决方案1】:

尝试了解您为 uglify 提供的 js 文件的依赖关系和顺序。

Bootstrap 的 js 文件需要 jQuery,因为它是依赖项,所以将 jQuery.js 放在 bootstrap.js 之前。使用此解决方案,您将解决 ####Bootstrap 的 JavaScript 需要 jQuery#### 的问题。 在gruntfile.js 中,将 jQuery 放在 bootstrap js 文件之前,因为 jQuery 是 bootstrap 的依赖项!

【讨论】:

    【解决方案2】:

    如果您不熟悉将所有这些元素集成在一起,我认为您面临的最大潜在问题是设置 Gruntfile 并决定哪些元素通过 Bower 进行管道传输,哪些元素仍在项目的 src 中某处。

    我实际上设置了一个Repo,专门用于与 Bower、Grunt 和 Bootstrap 合作。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2015-05-11
      • 1970-01-01
      • 2015-07-16
      • 1970-01-01
      • 2023-04-10
      • 2015-08-11
      • 2016-05-11
      • 1970-01-01
      相关资源
      最近更新 更多