promise 的相关问题请教高手

我看你有戏 2021-09-03 13:14:36
//这是一个get请求的函数,返回Promise
function request(requestPath, params, method) 
{

   const promise = new Promise((resolve, reject) => {
    ...
    ...
    })
    return promise;
}


function  GetData(){
        var res='';
        let params = { 'ccy': ccy};
        request('/api/xx/account/balance', params, 'GET').then(
            getData=>{
                //console.log(getData);
                res=getData;
            });            
     return res;
}

var res = GetData();

///现在的问题我想把get请求的内容返回给GetData() 这个函数,我这个写法发现不对,谁帮忙看看

 

...全文
261 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
^ZL 2021-10-21
  • 打赏
  • 举报
回复

函数里面有异步操作是没法直接返回的。

欧巴哆啦A梦 2021-09-03
  • 打赏
  • 举报
回复

//这是一个get请求的函数,返回Promise
function request(requestPath, params, method) 
{
 
   const promise = new Promise((resolve, reject) => {
    ...
    ...
    })
    return promise;
}
 
 
function  GetData(){
        var res='';
        let params = { 'ccy': ccy};
        return request('/api/xx/account/balance', params, 'GET').then(
            getData=>{
                //console.log(getData);
                Promise.resolve(getData)
            });   
}
 
GetData().then(res => var res = res);
我看你有戏 2021-09-03
  • 举报
回复
@欧巴哆啦A梦 谢谢回复 var res = GetData(); 我想用这么个函数就可以把结果取出来放到res里面, 不想用then,有办法解决吗
我看你有戏 2021-09-03
  • 打赏
  • 举报
回复

现在的问题我想把get请求的内容返回给GetData() 这个函数,我这个写法发现不对,谁帮忙看看

Stephen_112 2021-09-04
  • 举报
回复
@我看你有戏 加上async 应该就可以了,异步肯定得用.then,不然取不到数据
我看你有戏 2021-09-06
  • 举报
回复
@Stephen_112 具体怎么写啊,可以帮忙写下吗,谢谢
finallyzyz 2021-09-06
  • 举报
回复
@我看你有戏 async GetData(){ var res=''; let params = { 'ccy': ccy}; var reques=await request('/api/xx/account/balance', params, 'GET'); return reques; } 有这样的写法,不知道是不是.

87,996

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧