代码中发get请求,有时候链接一串参数,后端要求,如果选项是ALL,就不要传递,比如告警级别有ALL,critical,major,minor,warnning这种,如果是ALL,后端是默认直接全表查找的,不需要传递参数,拼url的时候难免要一堆判断,看bootstrap-table里面如果参数是undefined,那么是不会编入到url中的,不想一堆判断了,写了个小函数处理仿照处理的下:
ObjectToUrl(obj:any) {
var url ='';
_.map(obj, function (num,key) {
if(num !== undefined) {
url+='&'+key+'='+num;
}
});
return url;
}
来个全的:
level=critical&alarmConfirmOperator=DomainAdmin&beginTime=1481866227&endTime=1481869827&alarmObjectType=host&pageSize=10¤tPage=1
level是ALL的情况,level为undefined
alarmConfirmOperator=DomainAdmin&beginTime=1481866303&endTime=1481869903&alarmObjectType=host&pageSize=10¤tPage=1
看结果不错的,沾沾自喜了下,百度了下,发现下面这个哥们写的更好,我没有考虑到编码问题,也没有考虑到对象中有数组的情况,汗,学习了~
http://blog.csdn.net/shawyeok/article/details/41749045