原生的小程序 url 上傳遞對(duì)象參數(shù)

t之前一直都是在小程序上傳遞一個(gè)參數(shù)的,這次做到的項(xiàng)目要做小程序上面?zhèn)鬟f一個(gè)對(duì)象,但是發(fā)現(xiàn)原生的小程序是無(wú)法傳遞一個(gè)對(duì)象參數(shù)的,自己百度了一下,參考鏈接是https://blog.csdn.net/tinson12321/article/details/82981365

參考上面的內(nèi)容 我做了一點(diǎn)改動(dòng),以下是代碼


2個(gè)封裝好的方法,直接拿過(guò)來(lái)用


在需要的頁(yè)面中引用需要的方法


url跳轉(zhuǎn)


傳過(guò)來(lái)的url是加密的 還要解密,這樣就能直接拿到對(duì)象參數(shù)了

以下是2個(gè)封裝好的方法代碼

// 構(gòu)建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對(duì)象

? 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)

? }

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容