• vue项目 get方法传参数组


    get方法传参数组的时候,会出现arr[]=1&arr[]=2这样的情况,这样的传参,后端是接收不到的,无法解析。

    那么我们就需要转换成这样的格式:arr=1&arr=2

    1、这里,需要安装一个插件----qs插件(详情参考:https://github.com/ljharb/qs)

    在vue项目中yarn add qs即可。

    2、在拦截器文件中引入

    import qs from 'qs'

    3、在你自己的项目的axios拦截器中,加入下代码:

    // request interceptor
    service.interceptors.request.use(
      config => {
        // do something before request is sent
        if (store.getters.token) {
          config.headers['token'] = store.getters.token
        }
    
        // get方法传递数组的处理(重点代码)
        if (config.method === 'get') {
          config.paramsSerializer = function(params) {
            return qs.stringify(params, { arrayFormat: 'repeat' })
          }
        }
    
        return config
      },
      error => {
        // do something with request error
        console.log(error) // for debug
        return Promise.reject(error)
      }
    )

    qs.stringify({ a: ['b', 'c'] }, { arrayFormat: 'indices' })
    // 'a[0]=b&a[1]=c'
    qs.stringify({ a: ['b', 'c'] }, { arrayFormat: 'brackets' })
    // 'a[]=b&a[]=c'
    qs.stringify({ a: ['b', 'c'] }, { arrayFormat: 'repeat' })
    // 'a=b&a=c'
    qs.stringify({ a: ['b', 'c'] }, { arrayFormat: 'comma' })
    // 'a=b,c'
  • 相关阅读:
    python打包成exe可执行文件(pyinstaller)
    pandas入门:pandas的数据结构介绍
    NumPy基础:范例-随机漫步
    NumPy基础:随机数生成
    NumPy基础:线性代数
    NOIP2018总结
    luogu P2327 [SCOI2005]扫雷
    luogu P3197 [HNOI2008]越狱
    luogu P1578 奶牛浴场
    luogu P1003 铺地毯
  • 原文地址:https://www.cnblogs.com/Alioo/p/13972792.html
Copyright © 2020-2023  润新知