Mongodb-native(使用しているクライアントライブラリ)は、検索結果がドキュメントを返さなかった場合でもエラーを発生させません。エラーは接続または構文の問題のために予約されています。
したがって、変数の存在を使用する前に、次のようにテストする必要があります。
Template.findOne({ name: templateName }, function (err, template) {
if (err === null && template == null) {
// no error, but no result found
err = new Error(templateName + ' not found');
}
if (err) {
console.log('Error occured');
console.log(err.message);
// early return to avoid another indentation :)
return callback(err);
}
template_subject = template.subject;
template_html = template.dataMsg;