封装方法实现axios中get请求参数序列化

vue yekong

vue开发axios中get请求常常需要将对象序列化为get的请求参数
这里通过封装方法来实现

封装

// get 参数序列化
export function serialize (obj) {
  let ary = []
  for (var p in obj) {
    if (obj.hasOwnProperty(p) && obj[p]) {
      ary.push(encodeURIComponent(p) + '=' + encodeURIComponent(obj[p]))
    }
  }
  return ary.join('&')
}

使用

import { serialize } from '../../utils/utils'

export function getgroupswitch (data) {
  return request({
    url: '/olm-biz/group/data/switch?' + serialize(data),
    method: 'get'
  })
}

如果不喜欢自己写,也可以使用插件来实现axios中get请求参数序列化

喜欢