所以我们现在已经使用节点很长一段时间了,我必须说,随着节点社区的不断发展,人们正在开发大量令人敬畏的模块和框架。但是,随着我们正在开展越来越多的项目,我有时会对哪个框架感到困惑。到目前为止,我们使用了以下框架:
Express - 我最喜欢的节点框架之一,当我们开始在node.js中创建应用程序时,这也是第一个。(我认为这也是第一个获得如此受欢迎的应用程序)。我们确实遇到了诸如回调地狱之类的问题但是如果路由和代码组织更清晰,我们很高兴使用它。
KoaJS - 来自TJ和团队的另一个人,这真是太棒了!当任何浏览器几乎不支持它们时使用ECS 6。 (特别是它可以帮助你完全删除回调地狱)。我们遇到了一些https符合Koa的问题,并且不得不使用hapi重写整个服务器,而且现在依赖于节点上的不稳定版本。
Hapi - 这是我们最近的采用,并没有做很多事情,但最有趣的部分是joi模块,它可以帮助我们(甚至在此之前)轻松验证请求他们点击了实际的服务器以及自动生成的文档。
Synth - 我还没有与它进行过多次互动,但在阅读文档时,我遇到了
使用服务和依赖注入就像AngularJS一样 后端!
这很棒,但由于它还处于测试阶段,我很快就不会考虑使用它了。
因此,在尝试为您的应用程序设计框架时,是否有一个特定的功能集,一个框架擅长,其他框架不是?因为老实说,我们采用大多数框架只是为了尝试它们,除了语法差异(使用ECS 6的Koa除外)以及它们如何处理路由,我在它们之间找不到太多差异。
所以我的问题是,我们应该通过观察它的受欢迎程度(这是人们通常做的)来采用任何框架,或者在做同样的事情时我们需要考虑一些检查点吗?
任何建议/帮助表示感谢。
修改
我想补充一点,我对这个问题的意图是找出在选择任何node.js框架时要考虑的关键点(而不仅仅是依赖它'受欢迎程度或有多少大牌使用它)。对于前端,我们可以很容易地说出因为我们已经知道或者已经被告知可以帮助开发更容易的关键功能(角度和骨干之间的差异可以是一个例子)但对于节点。没有任何方式的js框架。
我也会请其他人考虑我的编辑。
答案 0 :(得分:6)
我会尽量保持这个答案尽可能不具意见。请编辑并帮助我改进这一点。这是一个重要的主题,应该得到一个很好的答案。
<强>赞成强>
<强>缺点强>
<强>赞成强>
<强>缺点强>
<强>赞成强>
<强>缺点强>
专为单页Web应用程序设计的第一个后端框架。
<强>赞成强>
<强>缺点强>