本文目錄一覽:
微信小程序wxs的使用(當頁面數據渲染前添加js操作)
小程序的wxs功能可以讓wsmxl可以調用和編寫js,基本上wxs和JS無關係,只是語法形式很相似。
如下寫了兩個關於時間的函數,並將它們導出,
wxs module=”m1″
var getMax = function(flightDate) {
var now = getDate().getDate();
var flDate = getDate(flightDate).getDate();
if( now flDate ){
return ‘+1’;
}else{
return ”;
}
}
var formartTime = function(flightDate,format){
if(flightDate){
var realDate = getDate(flightDate);
function timeFormat(num) {
return num 10 ? ‘0’ + num : num;
}
var date = {
“Y”: timeFormat(realDate.getFullYear()),
“M”: timeFormat(realDate.getMonth() + 1),
“d”: timeFormat(realDate.getDate()),
“h”: timeFormat(realDate.getHours()),
“m”: timeFormat(realDate.getMinutes()),
“s”: timeFormat(realDate.getSeconds()),
“q”: Math.floor((realDate.getMonth() + 3) / 3),
“S”: realDate.getMilliseconds(),
};
if (!format) {
format = “yyyy-MM-dd hh:mm:ss”;
}
if( format == ‘hh:mm’ ){
return date.h+’:’+date.m;
}else{
return date.h+’:’+date.m;
}
}else{
return false;
}
}
module.exports.getMax = getMax;
module.exports.formartTime = formartTime;
/wxs
可在頁面添加如下使用:
m1.formartTime(); m1.getMax();
公眾號h5中使用微信JS-SDK(個人筆記)
通過使用微信JS-SDK,網頁開發者可藉助微信高效地使用拍照、選圖、語音、位置等手機系統的能力,同時可以直接使用微信分享、掃一掃、卡券、支付等微信特有的能力,為微信用戶提供更優質的網頁體驗。
例子為在vue中使用微信JS-SDK,步驟如下:
先登錄微信公眾平台進入「公眾號設置」的「功能設置」里填寫「JS接口安全域名」。
備註:登錄後可在「開發者中心」查看對應的接口權限。
插件方式:
引入js文件方式:
在需要調用JS接口的頁面引入如下JS文件,(支持https):
如需進一步提升服務穩定性,當上述資源不可訪問時,可改訪問: (支持https)。
掛載到Vue原型
與使用 JS-SDK 配置方式相同,所有需要使用開放標籤的頁面必須先注入配置信息,並通過openTagList字段申請所需要的開放標籤,否則將無法使用(同一個 url 僅需調用一次)。開放標籤的申請和 JS 接口的申請相互獨立,因此是可以同時申請的。
配置成功之後,就可以使用相關的api了。例子為微信支付。
3.分享出去的是鏈接,不是卡片的原因及解決方案:
原因: 微信開放全域名訪問後出現的限制。
解決方法:
這會導致別人通過分享卡進來的頁面不是自己配置的頁面。
解決辦法: 把路由hash模式改成history模式。(讓後端把匹配不到的頁面重定向到首頁)
開發者需要配合使用微信開放平台提供的 SDK 進行一次性訂閱消息授權請求接入。正確接入 SDK 後,開發者移動應用會在終端本地 拉起微信應用進行訂閱消息授權 ,微信用戶確認後微信將拉起開發者移動應用,並帶上授權用戶 openid 等信息。
使用方式: 引導用戶打開 ;appid=wxaba38c7f163da69bscene=1000template_id=1uDxHNXwYQfBmXOfPJcjAS3FynHArD8aWMEFNRGSbCcredirect_url=http%3a%2f%2fsupport.qq.comreserved=test#wechat_redirect 鏈接。
可拉起微信打開一次性消息訂閱授權頁:
使用方式:
如需添加參數,可在redirect_uri後面進行拼接,授權成功之後會帶回來。
其他問題請參考:
JS交互微信之JSAPI支付
本篇為 JS交互微信系列篇 的第四篇 微信JSAPI支付 ,記錄在微信內置瀏覽器內用調用微信支付過程。
JSAPI支付是用戶在微信中打開商戶的H5頁面,商戶在H5頁面通過調用微信支付提供的JSAPI接口調起微信支付模塊完成支付。
要擁有兩個賬號:
要開通產品中心的JSAPI支付。然後 產品中心=開發配置=支付配置=公眾號支付配置 綁定支付授權目錄,寫已通過ICP備案的域名。
另外,要在ip白名單中,配置測試地址ip和線上生產地址ip,不然各種回調都會失敗!
由於在微信內支付需要獲取用戶的 openid ,要獲取它則必須通過網頁授權配置。在公微信公眾平台中, 公眾號設置=功能設置=網頁授權域名 中按要求填寫。
在支付流程方面,重點依然都在後端處理,前端方面步驟比較簡單。本文只敘述前端內容。
在將要進入支付的前一頁面,直接接入微信授權,然後跳轉進要支付的那個頁面。舉個例子:有a、b兩個頁面,在b頁面用到支付,b頁面由a頁面跳轉而來。那麼在a頁面跳b頁面的時候,別直接跳轉b的url,而是跳轉到:
{appId}redirect_uri={b.html}response_type=codescope=snsapi_base#wechat_redirect
我們注意到,這裡有這兩個需要自己寫的參數: appid 和 redirect_uri ,意義是:
另外,還有一個注意的點是, b.html這個url我們要進行encode轉碼,不然地址解析可能會出現問題!
上一步執行完後,在微信瀏覽器中,我們會得到一個鏈接,類似:
b.html?code={code}state=#/
在此處,我們得到了一個code值,這就是我們獲取 openid 的憑證了。
獲取方法當然是把值傳給後台,後台去處理啦~
在上一步中,我們拿到code值後,就可以提交一些信息給後端了,比如商品相關屬性、總價等,另外加上code值,傳給後端。後端一頓操作後,返回給前端。我們需要的參數如下(後端返回下面這些參數):
上個步驟拿到需要交互微信的參數後,就開始調用微信的支付接口了,如下:
至此,調用微信JSAPI來完成在微信內的支付就完成了。
原創文章,作者:Z5K66,如若轉載,請註明出處:https://www.506064.com/zh-hk/n/127882.html