因项目的原因,下面的两个方法是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!')
}