2017-07-21 3 views
3

文書には、以下のコードスニペットの同値性が記載されています。しかし、最初のケースでは、コールバック関数内でドキュメントコレクションの操作を行うことができますが、後者のマップ関数は1つのドキュメントでのみ機能します。コールバックではできるが、マップ関数ではできないドキュメントの値をグループ化したい。 「JavaScript Language Integrated Query」でこれを実現する方法はありますか?そして、私はどのように応答体を適切に設定するのですか?同様の問題を持つ人のためにdocumentDB:JavaScript言語統合クエリを使用する場合のストアドプロシージャでのコールバック関数の定義方法

__.queryDocuments(__.getSelfLink(), 
      "SELECT docs.id, docs.message AS msg " + 
      "FROM docs " + 
      "WHERE docs.id='X998_Y998'" 
     , 
     function(err, docs, options) { 
      __.response.setBody(docs); 
     }); 

__.chain() 
    .filter(function(doc) { 
     return doc.id === "X998_Y998"; 
    }) 
    .map(function(doc) { 
     return { 
      id: doc.id, 
      msg: doc.message 
     }; 
    }) 
    .value(); 
+0

問題が解決しました。値関数にコールバックを入れる必要があります。そこで、エラー、フィード、継続トークンが提供されます – juwil

答えて

1

:上記のコメントを参照してください。コールバックロジックをvalue関数に入れます。