在Azure函数中说我有:
const cosmosDBTrigger: AzureFunction = async function (context: Context, documents: any[]): Promise<void> {
if (!!documents && documents.length > 0) {
documents.forEach(function (document) {
context.bindings.outputdocuments = document
//1 - SHOULD IT GO HERE
});
}
//2 - SHOULD IT GO HERE
}
将context.done
放置在位置1或2上是正确的位置吗?也就是说,应该在循环中每个文档的末尾吗?
谢谢。
答案 0 :(得分:1)
我不确定它在Node js中是如何完成的,但我认为应该是这样的
const cosmosDBTrigger: AzureFunction = async function (context: Context, documents: any[]): Promise<void> {
if (!!documents && documents.length > 0) {
context.bindings.outputdocuments = documents;
}
context.done();
}
原因是,您只写的最后一份文件是
context.bindings.outputdocuments = document
这意味着您通过循环覆盖了最后一个文档的输出,而不是提供一个数组。