收藏
回答

带‘#’的字符串,在iOS系统里的小程序中,都丢失了


你想反馈一个 Bug 还是 提一个需求?

bug

如果是 Bug:


* Bug 表现是什么?预期表现是什么?

在webview中通过navigateTo跳转到另一个webview,携带了一个URL作参数,该URL中带有字符‘#’,在新webview的onLoad中解析得到该URL并打开,结果是:在安卓手机、开发工具里没问题,在iOS里面打不开,通过wx.showModal打印看到的是字符‘#’丢失了,在安卓手机、开发工具里打印出来是正确的

* 如何复现?

直接打印个‘#’也会丢失

* 提供一个最简复现 Demo

直接打印个‘#’

最后一次编辑于  2018-01-11
回答关注问题邀请回答
收藏

10 个回答

  • 黄思程
    黄思程
    2018-01-17

    encodeURIComponent一下试试

    2018-01-17
    有用
    回复
  • 黄思程
    黄思程
    2018-01-12

    是说web-view组件还是小程序页面调用navigateTo?

    2018-01-12
    有用
    回复
  • 正在路上的HB
    正在路上的HB
    2018-02-08

    。。。

    2018-02-08
    有用
    回复
  • 正在路上的HB
    正在路上的HB
    2018-01-24

    没有解决方法吗?还是说我的写法不对?

    2018-01-24
    有用
    回复
  • 正在路上的HB
    正在路上的HB
    2018-01-18
       let urlParam = `../webview/index?url=${Vue.prototype.$base64.encode(encodeURIComponent(url))}`
       window.wx.miniProgram.navigateTo({
         url: urlParam
       })

    这是在H5在小程序内的跳转

       let decodeURL = decodeURIComponent(util.base64.decode(url))

    这是小程序里跳转的时候的解析

    在安卓手机、开发工具里没问题,在iOS里面打不开

    2018-01-18
    有用
    回复
  • 正在路上的HB
    正在路上的HB
    2018-01-18

    使用了encodeURIComponent

    使不使用都不行

    2018-01-18
    有用
    回复
  • 正在路上的HB
    正在路上的HB
    2018-01-16

    尝试过很多方法了

    比如:传参前替代#,打开时替换回来。

    打开时正则匹配缺少#的,就加上。

    加斜杠。

    都不行,感觉就是在iOS的小程序里,变量带#的都被删掉了

    2018-01-16
    有用
    回复
  • 正在路上的HB
    正在路上的HB
    2018-01-16

    我是在webview的h5里面,把url通过navigateTo带参数传递到小程序代码里,类似:

      window.wx.miniProgram.navigateTo({
         url: `../webview/index?openURL='URL(含‘#’号)'`
      })

    然后在小程序里通过webview打开这个URL,

    结果是:在安卓手机、开发工具里没问题,在iOS里面打不开
    2018-01-16
    有用
    回复
  • 正在路上的HB
    正在路上的HB
    2018-01-11
    还是一样的~加个‘\’后,安卓里看到的结果是多了个‘\’而打不开了,iOS里面看到的就只有个‘\’没有‘#’~
    2018-01-11
    有用
    回复
  • 小杰
    小杰
    2018-01-11

    你转义一下试试看在#前面加个\

    2018-01-11
    有用
    回复
登录 后发表内容