【问题标题】:What is the advantage of using Bower to install all the package content I don´t even need? [closed]使用 Bower 安装我什至不需要的所有包内容有什么好处? [关闭]
【发布时间】:2014-11-14 19:52:05
【问题描述】:

想象一下,我想在我的网站上使用像 angular.js 和 html5shiv 这样的插件。我现在可以使用 bower 来安装这些包以及这些包中所有不必要的文件,或者我可以简单地包含来自 Google 或 Cloudflare 的 cdn 托管文件。所以有人可以告诉我将所有必要的插件添加到 bower.json 有什么好处,然后必须从我需要包含在我的 HTML 文件中的包中手动获取 .js 文件。这不是更复杂和更耗费资源吗?

示例:为什么我应该将 angular.js 添加到 bower.json 并让它下载整个 Angular 包,包括 Gruntfile、所有依赖项和资产(9MB!)等等,而不是在我的 HTML 文件中添加一行。

什么时候使用 Bower 才有意义?我看到的唯一优势是其他开发人员可以看到您项目的依赖项......

【问题讨论】:

  • 我通常更多地使用 bower 进行开发,或者当我希望所有内容都本地化时,但如果您不需要额外的库,我不明白您为什么应该在您的端托管它,它占用更多资源。
  • 你能给我一个你会使用 Bower 的插件的例子吗?
  • 这很棘手,因为其中很多都在 cdn 上,但如果我发现一个不存在或没有特定版本的,我只使用 Bower。
  • 好的,谢谢,我只是想知道,因为现在我感觉每个人都使用 Bower 来开发他们所有的插件(例如:github.com/roots/roots/blob/master/bower.json)
  • Bower 管理依赖项,因此安装组件也会安装任何缺少的依赖项。如果可用,Bower 还负责更新已安装的组件。

标签: html angularjs bower html5shiv


【解决方案1】:

的确,只使用一个图书馆凉亭是矫枉过正的。当你有多个库时,bower 会大放异彩,其中一些库相互依赖。就像你一样:

  • 角度
  • jquery
  • 选择2
  • angular-ui
  • 角度路由段

angular-ui/ui-utils 将它们的依赖描述为:

"angular": ">= 1.0.2"

它将接受任何大于 1.0.2 的角度版本。如果您的项目或您的任何依赖项将角度版本指定为小于 1.0.2 的版本,bower 将提示并询问如何解决冲突。

【讨论】:

  • 谢谢,但最终这可能会让知道哪些文件要上传到我的服务器变得更加困难,不是吗?我可能最终会上传我的整个资产文件夹,这真的是错误的。你怎么知道最后要上传哪些文件到你的服务器?
猜你喜欢
  • 1970-01-01
  • 2017-12-07
  • 1970-01-01
  • 2011-04-26
  • 1970-01-01
  • 1970-01-01
  • 2014-02-24
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多