2
我有執行DB查詢sequelize實例方法:異步表查詢
getPropertyDays() {
const queryString = `
SELECT
state
FROM property_days
WHERE
DATE(day) = CURDATE() AND
property_id = :propertyId;`;
const replacements = {propertyId: this.id};
return this.sequelize.query(queryString, {replacements: replacements, type: sequelize.QueryTypes.SELECT});
},
即得到由吸氣叫:
getterMethods: {
propertyState() {
var self = this;
const blockedDay = 'x';
const unavailableDay = 'u';
this.getPropertyDays().then(function(result) {
var state = result[0]['state'];
if (self.prospect || state == unavailableDay) {
return 'unavailable';
}
if (state == blockedDay) {
return 'occupied';
}
else {
return 'available';
}
});
}
},
的問題是,其結果是從getter返回的是未定義的,因爲他在返回之前無法解決承諾。
由於我沒有表格模型,我該如何解決這個問題?已經在這附近已經有一天了!
非常感謝。
不是我的實驗。例如,模型的toJSON將輸出promise的屬性與promise的解析值,這並不是那麼有用。 – Kyle