码迷,mamicode.com
首页 > Web开发 > 详细

jsonp封装成promise

时间:2018-12-31 11:24:57      阅读:201      评论:0      收藏:0      [点我收藏+]

标签:indexof   efi   enc   url   拷贝   component   +=   imp   define   

首先将jsonp通过npm 安装引入js文件中,代码如下

import originJsonp from ‘jsonp‘

export default function jsonp(url, data, option) {
url += (url.indexOf(‘?‘) < 0 ? ‘?‘ : ‘&‘) + param(data)
console.log(url)

return new Promise((resolve, reject) => {
originJsonp(url, option, (err, data) => {
if (!err) {
resolve(data)
} else {
reject(err)
}
})
})
}

export function param(data) {
let url = ‘‘
for (var k in data) {
let value = data[k] !== undefined ? data[k] : ‘‘
url += ‘&‘ + k + ‘=‘ + encodeURIComponent(value)
}// url.substring(1)是因为上面拼接url字符串的时候做判断的时候会加&所以从1开始拷贝字符串
return url ? url.substring(1) : ‘‘
}

jsonp封装成promise

标签:indexof   efi   enc   url   拷贝   component   +=   imp   define   

原文地址:https://www.cnblogs.com/zhx119/p/10201547.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!