日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 人文社科 > 生活经验 >内容正文

生活经验

【H5唤起微信“扫一扫”】舒工自定义微信H5唤起扫码Vue组件sg-scan.vue(扫码按钮大概是在底部),注意只是代码片段,不含微信鉴权业务流程

發(fā)布時間:2023/11/27 生活经验 35 豆豆

?

?

<!--強哥的自定義組件:H5喚起微信“掃一掃”-->
<template><div class="sg-scan" :up="isToUp"><van-button icon="scan" type="info" @click="scan" round /></div>
</template>
<script>
// import wx from "weixin-jsapi"; //這個快要被廢棄了1.0.0
import wx from "weixin-js-sdk"; //要用微信的屌方法必須要引入這個玩意兒!!!
export default {data() {return {isToUp: false,defaultScanErrorText: "該碼不屬于本系統(tǒng),暫不支持識別!"};},/* 【屬性說明】 (均為非必須參數(shù))onlyScanWeb:true/false      是否僅支持識別網(wǎng)址(默認false)containString:" "           識別內(nèi)容必須包含字符串內(nèi)容(一般用于限定xxx.com域名下的內(nèi)容)scanErrorText:" "           識別失敗后的錯誤提示文本內(nèi)容autoLink:true/false         是否自動跳轉(zhuǎn)識別的路徑(默認false)*/props: ["onlyScanWeb", "containString", "scanErrorText", "autoLink"],mounted() {this.initScroll();},methods: {//頂部導(dǎo)航條(菜單)隨著滾動條隱藏:1、滾動條往下隱藏導(dǎo)航條;2、滾動條往上顯示導(dǎo)航條initScroll() {var beforeScrollTop =window.pageYOffset ||document.documentElement.scrollTop ||document.body.scrollTop ||0;onscroll = () => {var afterScrollTop =window.pageYOffset ||document.documentElement.scrollTop ||document.body.scrollTop ||0;this.isToUp = afterScrollTop > beforeScrollTop;beforeScrollTop = afterScrollTop;};},scan(callback) {wx.ready(() => {//注意!!!一定要在wx.config的jsApiList: []數(shù)組中加入"scanQRCode",否則你怎么死的都不知道wx.scanQRCode({needResult: 1, // 默認為0,掃描結(jié)果由微信處理,1則直接返回掃描結(jié)果,scanType: ["qrCode", "barCode"], // 可以指定掃二維碼還是一維碼,默認二者都有success: res => {/* 【返回結(jié)果】res:{"resultStr":"二維碼識別內(nèi)容(可能是鏈接或者文本內(nèi)容)","errMsg":"scanQRCdoe:ok",} */var result = res.resultStr; // 當(dāng)needResult 為 1 時,掃碼返回的結(jié)果if (this.onlyScanWeb !== undefined && this.onlyScanWeb !== false) {if (result.indexOf("http") !== 0) return this.errorTip();}if (this.containString) {if (!result.includes(this.containString)) return this.errorTip();}this.autoLink !== undefined &&this.autoLink !== false &&location.replace(result); //自動跳轉(zhuǎn)鏈接this.$emit("scan", result); //觸發(fā)父文件綁定的scan事件,并拋出掃碼識別的內(nèi)容callback && typeof callback === "function" && callback(result); //執(zhí)行回調(diào)函數(shù)(通常用于父組件調(diào)用this.$refs.sgScan.scan(d=>{}))}});});},errorTip() {var text = this.scanErrorText || this.defaultScanErrorText;this.$notify({ message: text });alert(text); //千萬不要用Vant組件的dialog、toast等彈窗提示,否則你什么也看不到,會讓微信掃一掃界面閃退}}
};
</script>
<style lang="scss" scoped>
@import "~@/css/sg";
.sg-scan {@extend %transition;position: fixed;width: 80px;margin: auto;left: 0;right: 0;bottom: 50px;text-align: center;&[up] {bottom: -80px;}.van-button {width: 80px;height: 80px;font-size: 2rem;box-shadow: 0 10px 25px rgba(0, 0, 0, 0.2);}
}
</style>

總結(jié)

以上是生活随笔為你收集整理的【H5唤起微信“扫一扫”】舒工自定义微信H5唤起扫码Vue组件sg-scan.vue(扫码按钮大概是在底部),注意只是代码片段,不含微信鉴权业务流程的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。