1
Mongooseを使ってJavascript ES6クラスを調べ、クラス変数へのアクセスに問題があります。私はcursor.on(data)
の中にthis.name
というイベントを使用して、クラスのコンストラクタで宣言された変数を参照します。どうすればこれを達成できますか?Javascript ES6クラス変数
'use strict';
const Mongo = require('../mongo')
class Example {
constructor() {
this.name = 'Test Class';
}
export(docId, callback) {
console.log('In export' + docId);
const cursor = Mongo.findDocById(docId);
console.log(this.name); // Prints "Test Class"
cursor.on('data', function (document) {
console.log(document);
console.log(this.name); // Prints "undefined"
});
cursor.on('close', function() {
Mongo.close();
callback(null, 'Success')
});
}
}
これは、非矢印ラムダの中に間違った 'this'の欺瞞を誰が知っていますか? – naomik
@naomikちょうど標準的なもの:-) – Bergi
ありがとうBergi^_^ – naomik