在某一天,经理让我创建一个antdesign pro 5.0的项目 众所周知 v4版本使用的是umi3 v5版本使用的umi4,之前一直写的是v4版本的项目,于是自从那天起开启了我的对antdesign pro 5.0的探索之路。
在v4版本的项目中处理序列化是自动的,例如 params参数是 a: [1,2,3] 则会自动转化为 a=1&a=2&a=3 但是在v5版本中a: [1,2,3] => a[]=1&a[]=2&a[]=3,会是这样,我一直搞不明白为什么!!!这是为什么 在我深深的思考之后,于是去问了百度,最终都是让我使用qs插件手动对params进行序列化操作。然而我并不甘心,总以为这很鸡肋,为什么要这样搞,,为什么要取消!,在一次偶然的机会我去反找了umi js 的文档 终于 终于 被我找到了
如图:
import queryString from 'query-string';
export const request: RequestConfig = {
// 加上这个就可以完美解决get参数序列化问题了
paramsSerializer(params) {
return queryString.stringify(params);
},
...
}