javascript - Bower 和 NPM 如何结合在一起?

标签 javascript build npm bower dependency-management

作为我的问题的序言,我来自 Java 后端开发人员的 Angular ,我们使用 Maven 进行构建。我曾在我们最近开发的一个服务器端 Node 项目上进行测试,但现在我将继续在我们的前端 JavaScript 客户端上设置测试。我不是很精通前端开发,这确实是我第一次涉足。

话虽如此,我想我将使用以下技术堆栈进行前端测试:Eclipse IDE、Maven 构建过程、Mocha 测试框架、Chai 断言框架、Nock HTTP 模拟框架、Sinon mocking/spying/stubbing 框架,Rewire 依赖注入(inject)框架。一切都应该没问题,因为这是我们用于 Node 项目的堆栈,所以我希望前端设置尽可能相似。

不过,这就是我的知识崩溃的地方。我似乎无法理解我们的 Node 项目和我们的前端 JavaScript 项目在依赖管理方面的区别。我不明白为什么我不会继续使用集成到我们的 Maven 构建中的 NPM 来处理依赖项管理和安装。

我看到很多人提倡 Bower,但是在查看了它的页面和文档之后,我仍然没有看到它填补了 NPM 无法填补的分割市场。就浏览器依赖管理而言,我看到很多对 NPM 的坚决拒绝;主要原因是 NPM 是为服务器端 Node 项目设计的,而不是为前端空间设计的。但谁在乎?不管它最初的设计意图如何,如果它做了我需要它做的事情,那么缺点在哪里?

请像我是一个完全的新手一样处理这个“问题”。在经历了这个过程和研究后,我意识到我对前端方面的知识非常缺乏。话虽如此,请在您的答案中尽可能具体和彻底。我很乐意根据需要分享项目配置等,以帮助描绘我所在的空间。感谢您的任何反馈!

最佳答案

Bower 和 NPM 工作方式不同。

NPM 非常强大,并且非常擅长它的工作。但是,您不会在其中找到很多客户端软件包。它们中的大多数都在那里,因为它们也在 Node 中工作。 (例如,Underscore.JS 和 JADE 模板引擎。)

这就是您拥有 Bower 的原因,它拥有大多数客户端软件包。它有很多 jQuery 插件、模板引擎、CSS 框架等。不要指望在 NPM 中找到这样的包。

两者都可以正常工作。我这样做。 :)

关于javascript - Bower 和 NPM 如何结合在一起?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16107489/

相关文章:

c# - 将构建版本号应用于程序集时出现 VSTS 问题

build - 如何将配置特定的 cmake 生成器表达式添加到 add_custom_target

c++ - 配置 C++ 应用程序构建的简单方法

javascript - 如何在 Gulp 中将文件和管道包装到同一目录中的新文件

javascript - 如何在 React-Native 中将按下事件从内部 Touchable 冒泡到外部 Touchable?

用于寻路间隙的 JavaScript 循环

javascript - 通过 Javascript 添加 CSS

node.js - 如何告诉 Node.JS 默认使用全局模块?

reactjs - 如何解决: Type error: 'Draggable' cannot be used as a JSX component ?(react-draggable)

javascript - 将动态数据保存在对象中?