【发布时间】:2020-08-19 09:46:10
【问题描述】:
我正在尝试为多个 Redis 连接创建一个构造函数,所以我开始尝试一些东西。 我只是从 has Promise { } 回来,但如果我在返回之前执行 console.log,我将获得真正的价值。
编辑:尝试不使用 async/await 仍然不起作用。
app.js
const rBredis = require("./redis");
const redis = new rBredis();
console.log(redis.has("kek"));
redis.js
const Redis = require("ioredis");
class BasicRedis {
constructor() {
// TODO
};
redis = new Redis();
async has(id) {
return await this.redis.exists(id)
.then( exists => {
// console.log(exists); works 0
return exists; // works not Promise { <pending> }
});
};
}
module.exports = BasicRedis;
【问题讨论】:
-
你
has()方法没有返回任何东西。 -
你应该这样做
return await this.redis.exists(id)
标签: javascript node.js asynchronous redis promise