中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

詳解vue項目接入微信JSSDK的坑

發布時間:2020-09-23 18:05:08 來源:腳本之家 閱讀:362 作者:聰明的竹子愛學習 欄目:web開發

用于記錄接入微信JS-SDK的坑,以后方便查詢 第一次接入公眾號微信支付、分享、定位等等的坑的時候,心里是迷茫而又恐懼。因為,聽說坑特別多,后來發現自己的親身體驗到了這一點。

支付的坑

1、當前URL未注冊

詳解vue項目接入微信JSSDK的坑

問題: 微信公眾號H5調起支付時,點擊支付按鈕出現“當前頁面的URL未注冊”的提示。

解決辦法:由于2017年8月1日微信官方把關于支付的信息轉移到了商戶平臺:公眾平臺微信支付公眾號支付授權目錄、掃碼支付回調URL配置入口已于8月1日遷移至商戶平臺(pay.weixin.qq.com )

所以進入以下位置:

登錄微信商戶平臺-產品中心-開發配置,配置支付授權路徑。如果掉起支付的頁面在 域名/pay.html中,那么就在此添加授權路徑, 如我的掉起支付的頁面在www.weixinPay.com/pay.html 中,那么授權目錄就配置為htt://www.weixinPay.com/

tip: 注意:后面的 / 一定要加上,表示該路徑下的頁面都可以調起微信的支付接口。

詳解vue項目接入微信JSSDK的坑

2、如果按照以上還是彈出當前URL未注冊 因為微信支付對spa項目的hash路由兼容還是不很好。需要加上一個 "?" 如圖:

詳解vue項目接入微信JSSDK的坑

代碼如下:

watch: {
 $route() {
  this.directRightUrl()
 }
},
methods: {
 directRightUrl() {
 let { href, protocol, host, pathname, search, hash } = window.location
 search = search || '?'
 let newHref = `${protocol}//${host}${pathname}${search}${hash}`
 if (newHref !== href) {
  window.location.replace(newHref)
 }
 }

我這里是根據App.vue文件,進行路由監控。然后給每個頁面都加上問號,雖然會些許性能消耗。但是方便省事,具體可以根據自己的頁面適當修改。

微信JS-SDK說明文檔

分享的坑

根據JS-SDK的文檔,很多人都是在初始化的wx配置的時候,傳入的當前的URL地址不正確。 然后就導致如下結果:

詳解vue項目接入微信JSSDK的坑

解決辦法: 請在保證后臺能正確返回初始化需要的配置參數的情況下

詳解vue項目接入微信JSSDK的坑

修改前:
// let currentUrl = window.location.href
修改后
let currentUrl = window.location.href.split('#')[0]

神奇成功了開心

詳解vue項目接入微信JSSDK的坑

需要注意的幾點:

jsApList: [] 需要加入對應參數。比如,分享加入'onMenuShareTimeline', 'onMenuShareAppMessage'。 具體的對應接口的參數可以參考文檔

所有接口的調用,請保證在wx.ready()執行后,才調用。文檔里面是這么建議的。

詳解vue項目接入微信JSSDK的坑

定位的坑

剛開始定位的,內心是有點小激動的。因為覺得這個功能很高大尚,當然了這只是我個人的想法。好了~,不扯了。

同樣的,給微信初始化的 jsApList 加入對應的參數。 然后在wx.ready()函數執行,但是,發現無論如何第一次進入頁面都無法成功彈出授權彈框。

詳解vue項目接入微信JSSDK的坑

后來發現,在頁面完成之后。延遲一秒再進行獲取定位,即可 百分百成功!坑爹有木有。 代碼如下

詳解vue項目接入微信JSSDK的坑

詳解vue項目接入微信JSSDK的坑

目前遇到這個三個坑,后期遇到再寫上吧。痛苦的經歷需要不要再有了

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持億速云。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

天津市| 游戏| 紫云| 内丘县| 扎囊县| 巴中市| 宜昌市| 蓝山县| 万载县| 康保县| 荣昌县| 巢湖市| 宾川县| 榆树市| 通山县| 佛坪县| 垣曲县| 建平县| 济阳县| 安阳市| 莱芜市| 平乐县| 拉孜县| 江北区| 新野县| 萝北县| 开原市| 怀来县| 陆良县| 浦北县| 兴化市| 鄂托克旗| 黑龙江省| 海宁市| 怀安县| 奇台县| 都匀市| 遂溪县| 客服| 四川省| 深水埗区|