0

私はmongooseでnode.jsを使用しています。私が直面している問題は、newModifier1印刷されていますが、その関数の外では値がnullであることです。

これが私のコードです:

// Find userSchema

newModifier1 = "";

exports.findModifier = function(modifierName){
  modifierModel.find({'name' : modifierName},function(err,result){
    if(err){
      console.log("Error : "+err);
      throw err;
    }
    else{
      newModifier1 = result;
    //  console.log("Modifier is searched successfully : "+newModifier1);
    }
    console.log("Modifier is searched successfully1 : "+newModifier1);
  });
  // newModifier1=temp;
  return newModifier1; // it takes newModifier1 = "" value here
}

問題の可能性はありますか?

4

2 に答える 2

0

modifierModel.find非同期で実行され、おそらくfindModifierfind メソッドのコールバックが実行される前にメソッドが返されます。印刷されていることがわかりますが、メソッドから返されるものはとにかく空の文字列です。asyncのようなライブラリを使用できます。

于 2013-06-07T05:52:44.250 に答える