微信小程序页面传参传对象

js 复制代码
// 构建url
const buildUrl = (url, query = {}, isSequence = true) => {
  if (!query) return url;
  const joiner = url.match(/\?/) ? '&' : '?';
  const queryStr = Object.keys(query)
    .map(key => {
      return `${key}=${encodeURIComponent(isSequence?JSON.stringify(query[key]):query[key])}`
    })
    .join('&')
  return url + joiner + queryStr;
}

// 解析query对象
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)
}

module.exports = {
  buildUrl,
  decodeQuery
}
相关推荐
栀秋6667 小时前
🌟从“抽卡式编程”到规范驱动: 深度解析「Vibe Coding」的三层跃迁
微信小程序·llm·vibecoding
Reece_8 小时前
微信小程序接入微信支付全流程指南(CloudBase / JSAPI / 真机可用)
微信·微信小程序·小程序
毕设源码-郭学长12 小时前
【开题答辩全过程】以 酒店预约微信小程序为例,包含答辩的问题和答案
微信小程序·小程序
week_泽13 小时前
小程序云数据库查询操作_2
数据库·小程序
说私域14 小时前
基于开源AI智能名片链动2+1模式S2B2C商城小程序的线上线下流量转化运营策略研究
人工智能·小程序·开源
项目題供诗14 小时前
微信小程序黑马优购(项目)(十三)
微信小程序·小程序
San3014 小时前
拒绝手写代码!用 Vibe Coding + SDD 范式“搓”一个微信计分小程序
微信小程序·trae·vibecoding
一点晖光14 小时前
uview 的u-tabs组件在微信小程序中会出现横向滚动条
微信小程序·安卓·横向滚动条
万岳科技系统开发15 小时前
开源知识付费源码:实现在线课程系统与会员管理
开发语言·小程序
青青子衿越15 小时前
微信小程序垂直滚动效果显示通知消息(无限循环滚动)
微信小程序·小程序