在我的create
、read
、update
和delete
函数中,如果事务成功,我将返回true
,否则false
- 除了read
,我返回请求的data
或null
。
此策略应该使测试变得容易,因为只需评估给定测试数据库的各种测试输入的返回值。
我的问题是,在db.query("...")
完成并调用其回调之前,我无法完全确定事务是否成功,但是,此时,原始 CRUD 函数已返回。
常见的做法是什么?
Javascript是异步的,在使用node时,你肯定想了解它是如何工作的。
网上有很多关于这方面的信息,但这里有一个答案:
用外行的术语理解异步代码
通常,在您的情况下,最佳做法是使用承诺。 承诺非常有用,但也可能需要一些时间来学习。 我个人使用 Q 承诺库
https://github.com/kriskowal/q
我真的希望这有所帮助。