H5开发获取APP提供到地址栏中的参数

应用场景:

针对web前端开发嵌套在APP项目的H5页面,在进行页面开发时需要拿到APP开发同事放入地址栏中的用户信息。


1. 问题描述:

开发状态中的http://localhost:8080/#/xxx 绝不是我们想要的地址。
而是项目发版后的地址:http://101.230.192.1xx/ebank/index.html#/bank?userId=5233&userName=王有才,目的是要拿到?后面的userId=5233&userName=王有才

2. 解决方法:
getLocationDate() {
      let obj = {};
      let urlDate = window.location.hash;// http://101.230.192.1xx/ebank/index.html#/bank?userId=5233&userName=王有才
      let reg = /[?&][^?&]+=[^?&]+/g;
      let arr = urlDate.match(reg); // 利用正则得到 ['?userId=5233', '&userName=王有才']
      if (arr) {
        arr.forEach((item) => {
          let tempArr = item.substring(1).split("="); // 截取字符串并以'='拆分字符串。  参考item ——>  ['userId', '5233']  ['userName', '王有才']
          let key = decodeURIComponent(tempArr[0]);   // 解码数组下标为0的值做为key。   参考item ——>  userId              userName
          let value = decodeURIComponent(tempArr[1]); // 解码数组下标为1的值做为value。 参考item ——>  5233                王有才
          obj[key] = value;
        });
      }
      console.log("得到地址栏中的参数",obj); // {userId: '5233', userName: '王有才'}
    },
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值