为什么我不能将对象放在类属性中?我这样做.profile = result[0]; 将 sql 查询选择的结果放入类属性中,但在之后的下一个构造中,当我尝试获取它时 console.log(this.profile); 他是不确定的,谁知道魔法是什么?
function user() {
database.call(this);
this.profile = new Object();
this.UP();
};
user.prototype = Object.create(database.prototype);
user.prototype.constructor = user;
user.prototype.Profile = function(){
var getUserAgent = new Promise((resolve, reject) => {
this.dbCon.query("SELECT ...;",
function (err, result, fields) {
if (err) throw err;
console.log('-> getUserAgent');
this.profile = result[0]; // result[0] содержит нужные мне данные
resolve(result[0]);
}
);
}).then((result) => {
console.log(this.profile);
console.log('<- UserAgent');
return true;
}).catch((e) => {
console.log('error: ', e)
});
}
这是一个箭头函数:
where
this
将与定义此箭头函数的函数中相同,并且该函数也是箭头函数,因此this
与 ... 相同,最终取决于方法的调用方式Profile
。