onLaunch(query) 没有经过 url decode
发布于 6 年前 作者 wcai 6729 次浏览 来自 问答

我并不确定这是否算是一个 BUG,只是它跟常规惯例的做法不一致。


onLaunch 的 query 参数从形式上跟一般网页 url 的 querystring 是一样的,但它并没有经过 url decode。


比如我启动的路径设置为 /pages/index/index?p=a%2Fb


那么:


onLaunch: function(args) {

    console.log(args.query.p); // 此处预期为 'a/b',但实际结果为 'a%2Fb'

}


这样的话就存在一个问题,如果我需要设置参数 p 的值为 'a&b',应该怎么写呢?

2 回复

那当我需要设置参数 p 的值为 ‘a&b’ 时,启动入口的路径是不是要写成 /pages/index/index?p=a&b

可是这样的话,p 的值应该只是 ‘a’ 吧?

你传入的参数没有必要进行 encode。

回到顶部