前言:json
這個問題支付寶小程序官方文檔並無專門說明,釘釘羣的官方技術支持給了個開發者社區的帖子,詳見:如何跳轉小程序。小程序
若是配置的頁面沒有參數還好,不會出問題,若是有參數,極可能配出來的連接沒法正常獲取到攜帶參數的,坑在這裏:微信小程序
1.page參數:剛開始覺得是頁面path路徑(也就是app.json中的路徑),由於後邊還有query參數,理所固然的會認爲這裏只須要path;api
2.query參數:雖然看到「啓動參數」四個字,可是這種路徑沒有配太小程序app的啓動參數的,微信小程序也不是這麼玩的,因此這裏就理所固然的被認爲是頁面參數了;微信
而後拼接出來的路徑是這樣的:app
window.location.href="alipays://platformapi/startapp?appId=xxx&page=pages/goodDetail/goodDetail&query=goods_id%3d101"
很顯然,這樣是沒法正常獲取頁面參數了。經驗證,上邊的連接拼接中缺乏了頁面參數的部分,這部分須要轉碼後追加在頁面path後邊。spa
正確操做:3d
//有頁面參數(沒有啓動參數)
location.href = "alipays://platformapi/startapp?appId=xxx&page=pages/goodDetail/goodDetail"+encodeURIComponent("?goods_id="+goods_id)
//有頁面參數,有啓動參數(如渠道號、平臺號等打開小程序就須要傳過來的參數)
location.href = "alipays://platformapi/startapp?appId=xxx&page=pages/goodDetail/goodDetail"+encodeURIComponent("?goods_id="+goods_id)+&query=encodeURIComponent("appParams="+xx)
總結:code
官方文檔突出了啓動參數,卻壓根兒沒提頁面參數,初次接觸,踩坑不免,畢竟支付寶小程序還在成長中,咱們本身也得多多實踐,多多嘗試。orm