t之前一直都是在小程序上传递一个参数的,这次做到的项目要做小程序上面传递一个对象,但是发现原生的小程序是无法传递一个对象参数的,自己百度了一下,参考链接是https://blog.csdn.net/tinson12321/article/details/82981365
参考上面的内容 我做了一点改动,以下是代码




以下是2个封装好的方法代码
// 构建url
export const buildURL = (url, query = {}, isSequence = true) => {
if (!query) return url
const joiner = url.match(/\?/) ? '&' : '?'
const queryStr = Object.keys(query)
.map(key => `${key}=${encodeURIComponent(isSequence ? JSON.stringify(query[key]) : query[key])}`)
.join('&')
return url + joiner + queryStr
}
// 解析query对象
export const decodeQuery = (originQuery = {}, isSequence = true) => {
const result = {}
if (!originQuery) return {}
return Object.keys(originQuery).reduce((prev, curr) => {
result[curr] = decodeURIComponent(originQuery[curr])
if (isSequence) {
result[curr] = JSON.parse(result[curr])
}
return result
}, result)
}