繁体   English   中英

TypeError:done不是函数查询回调

[英]TypeError: done is not a function query callback

我试图将查询结果保存到变量中,我已经读过你必须使用回调来执行此操作。 我遇到此过程有问题并收到错误。

function getQryUser(user) {
  if (user.chkUserStatus) {
    var qryUser = request.query("SELECT someItems on someTbls", function(err, rows, done) {
      if (err) {
        return done(err, null);
      } else {
        return done(null, rows[0]);
      }
    });
  }
}

从我调用我的功能

var qryUser = getQryUser(user);

假设您正在使用node-sqlserver ,则query()回调只接受两个参数, errorresults 以下是他们官方单元测试的一个例子:

sql.query(conn_str, "SELECT 1 as X, 'ABC', 0x0123456789abcdef ", function (err, results) {
    assert.ifError(err);

    var buffer = new Buffer('0123456789abcdef', 'hex');
    var expected = [{ 'X': 1, 'Column1': 'ABC', 'Column2': buffer}];

    assert.deepEqual(results, expected, "Results don't match");
    ...

您是否自己也可以查看单元测试的示例并从那里获取done() 请注意,它来自query()之外的父suite()范围,因此与一般query() API用法无关。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM