JavaScript 中的 Bower 和 npm 有什么区别?
npm
npm 通常用于管理 Node.js 模块,并执行嵌套依赖树。它还适用于前端,并用于 Grunt、CoffeeScript 等开发工具。
如果不使用嵌套依赖项,则很难避免依赖项冲突。因此,使用 npm 已被证明是很有益处的。
在 Node 中添加的任何内容都以模块的形式构成。在将 NPM 用于浏览器端依赖项时,你的代码结构会像 Node 一样。
以下是依赖结构
project root [node_modules] -> dependency P -> dependency Q [node_modules] -> dependency P -> dependency R [node_modules] -> dependency Q [node_modules] -> dependency P -> dependency S
Bower
Bower 要求使用扁平依赖项树,并且用于前端。它对于前端包很有用。
它加载纯旧 JavaScript 文件,例如在 <head> 标记中添加 <script>…</script>。
它针对前端进行了优化,并使用了扁平依赖项树,其中每个包只需要一个版本。这最终将页面加载量减少到了最低。
注意:Bower 现已弃用。
以下是依赖结构
project root [bower_components] -> dependency P -> dependency Q // wants P -> dependency R // wants Q and R -> dependency S
广告