首页 > js处理返回的数据的问题

js处理返回的数据的问题

因项目的原因,下面的两个方法是AS给我的api接口:
现在有个发送请求的方法:

function sendRequest(Id){
    //Id是约定的请求编号,如:"001","002","003"...等等
}

下面是个接收请求返回的方法:

function sendRequestBack(msg){
    //msg为返回的json数据,包含请求ID
}

现在的问题是:请求的编号有很多,我不可能把返回的数据全都正在sendRequestBack中处理吧?怎么样处理才是合理的呢?
我的思路是,写好处理数据的函数,然后在sendRequestBack中switch请求ID,调用对应的函数。

ps:之前一直做页面重构,与后台交互少,可能问题描述不太专业,还请谅解。
谢谢。


不知道你要具体实现什么内容,所以不一定能帮到你;
但直接根据返回的数据进行判断,再分别调用不同方法,你这样的思路是可行的。


先reduce!!!!


switch方法是可以的,但是随着请求的增加会使得sendRequestBack过于庞大,难以维护。
可以写一个json对象,比如叫ajaxCallback = {},key是约定的id,value是需要对数据进行数据的回调函数,像这样:

var ajaxCallback = {
    "001": function(){
        // do someting with 001 request data
    }
    ....
}
function sendRequestBack(msg){
    var fn = ajaxCallback[msg.id];
    if(fn && typeof fn === 'function'){
        return fn(msg)
    }
    return console.error('no handle function exist!')
}
【热门文章】
【热门文章】