【问题标题】:What is the purpose of this err function "next(err, err || doc._id)"这个错误函数“next(err, err || doc._id)”的目的是什么
【发布时间】:2015-08-30 11:54:46
【问题描述】:

我试图了解以下函数中发生的情况:

   next(err, err || doc._id) 

我对此进行了一些研究,但找不到任何解释 next 函数的文档。有人能解释一下它的用途吗?

function createQuestions(storyPrettyId, questions, author, callback) {
    async.map(
        questions,
        function(question, next) {
            QuestionMongoModel.create({
                storyPrettyId: storyPrettyId,
                title: question.title,
                answers: question.answers,
                author: author
            }, function(err, doc) {
                next(err, err || doc._id)
            })
        }, 
        callback
    )
}

【问题讨论】:

  • 感谢 Ram,这是我在该网站上的第一篇文章。感谢您向我展示它是如何完成的。

标签: node.js mongodb asynchronous express backend


【解决方案1】:

答案在async.map()的文档中:

参数

  • arr - 要迭代的数组。
  • iterator(item, callback) - 应用于arr 中每个项目的函数。迭代器传递了一个 callback(err, transformed),一旦它完成并出现错误(可以是 null)和一个转换的项目,就必须调用它。
  • callback(err, results) - 可选 当所有 iterator 函数完成或发生错误时调用的回调。结果是来自arr 的转换项目数组。

next 只是您传递给async.map()iterator() 函数的callback 参数。

【讨论】:

    猜你喜欢
    • 2014-07-06
    • 1970-01-01
    • 1970-01-01
    • 2018-06-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-11-26
    • 2022-08-17
    相关资源
    最近更新 更多