我在第一个页面里面加载公众号的文章,调取里面的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 |
所以导致页面 加载失败。
这个时候我应该怎么处理呢?
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)
})
}
感谢 !按你的方法解决了
非常感谢
经再见,电脑崽提示 用了 decodeURIComponent 就好了
我再查查它们的区别。
encodeURI decodeURI
感谢回答!
我在 发送这块 加了
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
是我的方式不对吗?
:> 小白求教!
不好意思。。说错了。。escape() unescape() 或者 encodeURIComponent decodeURIComponent
感谢!
经再见,电脑崽提示 用了 encodeURIComponent 和 decodeURIComponent
抱歉。。浪费了你1分钟表情~
哈哈!