如果 node-postgres .connect() returns 出错,是否需要 done()?

Is done() required if node-postgres .connect() returns with an error?

从文档看来,如果从池中获取客户端时出现问题,则 err 不为空。如果是这样,是否意味着 done() 不需要被调用?

pg.connect(connString, function(err, client, done){
    if (err) { done(); return err; }

    ...
});

pg.connect(connString, function(err, client, done){
    if (err) { return err; }

    ...
});

您只在 connect() 成功时调用 done(),即 errnullundefined

所以第二个例子是正确的。