async 里面的回调函数的值怎么拋出去

  // 获取本地token
  async getLocalAccessToken() {
    const token = await fs.readFile('wechatToken. txt', 'utf8', (err, data) => {
      return token;
    });
    return token;
  }
  // 获取accesstoken
  async updateMenu() {
    // const access_token = await this.ctx.service.home.getLocalAccessToken();
  }

想在updateMenu函数里面,调用getLocalAccessToken,获取token的值,我知道这样写是不对的,异步这样调用会先执行return token;这步,请问怎么写?

阅读 2.4k
2 个回答
 getLocalAccessToken() {
    return new  Promise((resolve,reject)=>{
        fs.readFile('wechatToken.txt','utf8',(e,data)=>e?reject(e):resolve(data));
    });
  }

调用方

const access_token = await this.ctx.service.home.getLocalAccessToken();
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题