第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定

Vue history 路由模式微信自定義分享總結(jié)

標(biāo)簽:
Node.js JavaScript Vue.js

因为之前一直使用的是 hash 模式,所以配置微信分享比较简单,不管是 Android 还是 iOS,只需要获取一次签名即可,然后在需要配置分享的页面在 wx.ready 的回调中编写分享的逻辑即可。

原来一直用 hash 模式都没什么问题,可能是最近微信升级之后,在 Android 端微信授权后重定向回来页面并不会刷新,导致我无法获取用户的授权信息。尝试了很久之后将路由改成 history 模式就解决了。但是 history 模式也有很多棘手的问题,分享就是其中一个。

在网上查阅了大量文章,但大多都是点到为止。说明了 Android 和 iOS 获取签名失败的问题。简单的说就是,在 iOS 的机器中,获取签名只需要去第一次进入的地址,在 Android 的机器中,每次路由跳转都需要拿当前地址去授权。 具体可以参考微信分享 总结(SPA/history模式)

我的做法是在打开页面的时候就去获取签名,然后进入需要分享的页面时,再判断是或否在 Android 设备中,再决定是否需要获取新的签名。签名的问题解决之后,我以为就OK了,后面才发现在 iOS 分享还是有问题。最后定位到的问题是在 iOS 中不会在进入分享页之后重复触发 wx.ready 的方法,只需要编写分享的逻辑即可。

function getSignature () {  // 获取微信签名}function wxShare (data) {  if (/(Android)/i.test(window.navigator.userAgent)) {    // 在 Android 设备,需要获取新的签名
    getSignature()
  }

  wx.ready (function () {
    shareConfig(data)
  })  // iOS 设备不会多次触发 wx.ready
  shareConfig(data)
}function shareConfig (data) {  // 分享逻辑}

         

作者:飞奔

链接:https://www.jianshu.com/p/7bff0b2af9bf


點(diǎn)擊查看更多內(nèi)容
TA 點(diǎn)贊

若覺(jué)得本文不錯(cuò),就分享一下吧!

評(píng)論

作者其他優(yōu)質(zhì)文章

正在加載中
  • 推薦
  • 評(píng)論
  • 收藏
  • 共同學(xué)習(xí),寫(xiě)下你的評(píng)論
感謝您的支持,我會(huì)繼續(xù)努力的~
掃碼打賞,你說(shuō)多少就多少
贊賞金額會(huì)直接到老師賬戶
支付方式
打開(kāi)微信掃一掃,即可進(jìn)行掃碼打賞哦
今天注冊(cè)有機(jī)會(huì)得

100積分直接送

付費(fèi)專(zhuān)欄免費(fèi)學(xué)

大額優(yōu)惠券免費(fèi)領(lǐng)

立即參與 放棄機(jī)會(huì)
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)

舉報(bào)

0/150
提交
取消