我在一个项目中使用Express,并且我一直在使用Cradle尝试使用CouchDB数据库。虽然异步执行的想法在性能方面很酷,但它使我的代码对于需要在一行中进行几个数据库调用的例程来说真的很混乱。
不使用回调是否可以进行初始调用?或者,我想更正确的是,有没有更好的方法来组织代码,不涉及嵌套的3或4个匿名函数在另一个只是为了获得数据库查询结果?代码只在一个地方使用,所以使用只调用一次的命名函数对我来说没有意义。
不使用回调是否可以进行初始调用?
据我所知,cradle只有异步API。
或者,我想更正确的说法是,有没有更好的方法来组织不包含嵌套3或4个匿名函数的代码彼此只是为了获得数据库查询结果?
我首先建议阅读以下关于流量控制主题的文章,以便对正在发生的事情有一个更大的了解:
- 理解事件驱动编程使用Node.js设计异步代码
- 理解事件循环并为Node.js编写优秀的代码
- Node.js:异步I/O for Fun and Profit
- 节点控制流程
- 节点控制流程第二部分
- 节点控制流程第三部分 node.js中的异步代码
然后你可以让事情变得简单,并利用几个流控制库来处理node.js中的异步代码问题:
- 异步