詳解單頁面路由工程使用微信分享及二次分享解決方案
wxShare 說明文檔
單頁面路由工程使用微信分享及二次分享解決方案
很多人在單頁面工程中使用weixin jsSDK時 ,第一次調用正常, 路由切換時發(fā)現(xiàn)調用分享配置報錯, 此時忽略了一點 ,在單頁面路由的 url 發(fā)生變化時, 需要重現(xiàn)調用微信jsSDK分享配置;
wxShare除適用于 Vue 單頁工程外, 也可以使用與其他單頁工程例如 React,本示例主要展示如何在 Vue中使用;
微信 jssdk調用基本原理
1. (初始化頁面,劃重點)掉用 api 獲取當前頁面 url 授權的簽名
2. 配置微信分享 jssdk
3. 路由切換時, 重新執(zhí)行步驟2
1. 快速使用, 只需三步
示例參見 demo下 src/main.js
在工程入口文件引入 wxShare 文件
/*************** 步驟一 引入 微信 jssdk ************/ let appInit=0; import wx from 'weixin-js-sdk'; //配置授權api wxShare.config.jsSDKAuth='/api/mobile/WeiXin/ecstoreSendJsSdk';
/*************** 第二步 初始化微信分享 ************/
if (location.host != "localhost:8080") {
let sign_url = location.href.split("#")[0];
appInit++;
if (wx) {
wxShare.initWxShare(sign_url);
}
}
/*************** 第三步 監(jiān)聽路由重置微信分享為默認 ************/
router.afterEach(route => {
let url=location.href.split("#")[0];
if (!store) return;
if(appInit>1){
wxShare.resetWxShareConfig();
}
appInit++;
})
/*************** end 分割線 ************/
2. wxShare提供的方法
2.1 initWxShare()
初始化微信分享, 此時會調用內部方法 wxShareAuth, 請求 api 授權當前頁面 url;
2.2 updateWxShareConfig()
更新微信分享配置內容, 例如, 在某個事件上主動調用此方法, 來更改微信分享配置的標題, 簡述,鏈接或者封面圖
2.3 resetWxShareConfig()
通常情況下, 在路由發(fā)生變化時, 希望已被更改過的分享配置, 重新重置為默認分享配置
2.4 configWXJSSDK();
調用微信jsSDK 完成分享配置
3. wxShare.config屬性配置
| 配置名稱 | 屬性值 | 默認值 |
|---|---|---|
| jsSDKAuth | String | '' |
| shareSign | Object | 下文shareSign |
| defaultWxShareConfig | Object | 下文defaultWxShareConfig |
| wxShareConfig | Object | 下文wxShareConfig |
3.1 shareSign提供的配置
{
appid:"",
jsapi_ticket:"",
nonceStr:"",
signature:"",
timestamp:'',
url:"",
}
3.2 defaultWxShareConfig
{
title: "默認分享配置title",
desc: "默認分享配置desc",
link: location.href.split("#")[0],
imgUrl: 'https://res.wx.qq.com/a/wx_fed/weixin_portal/res/static/img/dNEBuK6.png',
jsApiList:['onMenuShareTimeline', 'onMenuShareAppMessage', 'hideMenuItems', 'closeWindow'],
hideMenuList:['menuItem:editTag', 'menuItem:delete', 'menuItem:originPage', 'menuItem:readMode', 'menuItem:openWithQQBrowser', 'menuItem:openWithSafari', 'menuItem:share:email', 'menuItem:share:brand']
}
3.3 wxShareConfig
wxShareConfig:{}
其他
/wxShare.js 為插件源碼文件, 可根據(jù)自己需求自行更改
demo 工程只需 clone 本工程,
npm install npm run serve
npm依賴插件
- weixin-js-sdk
- axios
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。
相關文章
一文搞懂JavaScript中bind,apply,call的實現(xiàn)
bind、call和apply都是Function原型鏈上面的方法,因此不管是使用function聲明的函數(shù),還是箭頭函數(shù)都可以直接調用。本文就帶你看看如何實現(xiàn)bind、call和apply2022-06-06
BootStrap 下拉菜單點擊之后不會出現(xiàn)下拉菜單(下拉菜單不彈出)的解決方案
最近學到Bootstrap下拉菜單,學懂了教程內容之后自己敲一個點擊按鈕底下彈出下拉菜單的小demo,寫完代碼發(fā)現(xiàn)運行之后點擊按鈕沒反應,下拉菜單彈不出來,下面給大家分享下解決方案2016-12-12
詳解JS數(shù)據(jù)類型的值拷貝函數(shù)(深拷貝)
這篇文章主要介紹了詳解JS數(shù)據(jù)類型的值拷貝函數(shù)(深拷貝)的相關資料,非常不錯,具有參考借鑒價值,需要的朋友可以參考下2017-07-07

