在sequelize getter方法中的asynchronous表查询

我有一个执行数据库查询的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}); }, 

getter调用:

 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返回的结果是不确定的,因为他在返回之前无法解决承诺

由于我没有表格的模型,我该如何解决这个问题? 已经在这附近已经有一天了!

非常感谢。

       

网上收集的解决方案 "在sequelize getter方法中的asynchronous表查询"

不会返回从this.getPropertyDays返回的承诺做的伎俩?

 getterMethods: { propertyState() { var self = this; const blockedDay = 'x'; const unavailableDay = 'u'; return 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'; } }); } },