收藏
回答

求助 用navigateTo 页面传递 url的问题.

我在第一个页面里面加载公众号的文章,调取里面的url, 给到另一个页面


  let url = that.data.list[index1].content.news_item[index2].url
 
  console.log('send url = ', url)
  wx: wx.navigateTo({
    url: '/pages/shownews/news?url=' + url,
    success: function(res) {},
    fail: function(res) {},
    complete: function(res) {},
  })
},


此时打印的日志是:

send url =  http://mp.weixin.qq.com/s?__biz=MzIxNzE5MDI1Mw==&mid=100000065&idx=1&sn=03e5a3eca6412394bd6c01d96c2a5a7a&chksm=17fcdb43208b5255ec2b4ad15c7d5a0e590fcb040122e4e8fead4a91ef9501e8845a14caa77c#rd


打开的另一个页面却是[后面的部分丢了]

onLoad: function(e) {
      console.log('recurl = '+ e.url)
  this.setData({
    url: e.url
  })
}
recurl = http://mp.weixin.qq.com/s


所以导致页面 加载失败。


这个时候我应该怎么处理呢?

最后一次编辑于  2018-09-10  (未经腾讯允许,不得转载)
邀请回答
复制链接收藏关注问题回答

9 个回答

  • 再见,电脑崽
    再见,电脑崽
    2018-09-10
      let url = that.data.list[index1].content.news_item[index2].url
      
      console.log('send url = ', url)
      wx: wx.navigateTo({
        url: '/pages/shownews/news?url=' + encodeURIComponent(url),
        success: function(res) {},
        fail: function(res) {},
        complete: function(res) {},
      })
    },
    onLoad: function(e) {
          console.log('recurl = '+ decodeURIComponent(e.url))
      this.setData({
        url: decodeURIComponent(e.url)
      })
    }


    2018-09-10
    赞同 11
    回复 1
    • Aleda
      Aleda
      2018-09-10

      感谢 !按你的方法解决了

      2018-09-10
      赞同
      回复
  • 卢霄霄
    卢霄霄
    2018-09-10

    encodeURI  decodeURI

    2018-09-10
    赞同
    回复 5
    • Aleda
      Aleda
      2018-09-10

      感谢回答!


      我在 发送这块 加了

      let url = encodeURI(that.data.list[index1].content.news_item[index2].url)
      console.log('send url = ', url)
      wx: wx.navigateTo({
        url: '/pages/shownews/news?url=' + url,

      另一个页面 加了

      onLoad: function(e) {
          let url = decodeURI(e.url)
          console.log('rec url = ', url)


      但打印出来的日志 还是:

      send url =  http://mp.weixin.qq.com/s?__biz=MzIxNzE5MDI1Mw==&mid=100000065&idx=1&sn=03e5a3eca6412394bd6c01d96c2a5a7a&chksm=17fcdb43208b5255ec2b4ad15c7d5a0e590fcb040122e4e8fead4a91ef9501e8845a14caa77c#rd


      rec url =  http://mp.weixin.qq.com/s


      是我的方式不对吗?


      :> 小白求教!

      2018-09-10
      赞同
      回复
    • 卢霄霄
      卢霄霄
      2018-09-10回复Aleda

      不好意思。。说错了。。escape() unescape() 或者 encodeURIComponent decodeURIComponent

      2018-09-10
      赞同
      回复
    • Aleda
      Aleda
      2018-09-10回复卢霄霄

      感谢!

      再见,电脑崽提示 用了 encodeURIComponent 和 decodeURIComponent


      2018-09-10
      赞同
      回复
    • 卢霄霄
      卢霄霄
      2018-09-10回复Aleda

      抱歉。。浪费了你1分钟表情~

      2018-09-10
      赞同
      回复
    • Aleda
      Aleda
      2018-09-10回复卢霄霄

      哈哈!

      2018-09-10
      赞同
      回复
  • Aleda
    Aleda
    2018-09-10

    非常感谢

    再见,电脑崽提示 用了 decodeURIComponent 就好了

    我再查查它们的区别。


    2018-09-10
    赞同
    回复