vue3在微信登录时使用嵌入的方式显示二维码-微信开放平台
vue
vuejs/vue: 是一个用于构建用户界面的 JavaScript 框架,具有简洁的语法和丰富的组件库,可以用于开发单页面应用程序和多页面应用程序。
项目地址:https://gitcode.com/gh_mirrors/vu/vue
·
先看文档
https://developers.weixin.qq.com/doc/oplatform/Website_App/WeChat_Login/Wechat_Login.html
官方文档有两种方法
原因
- 由于前后端分离,使用后端返回url虽然简单,但可能会遇到跨域问题
- 那就使用前端嵌入二维码
- 好处是又方便又快又好管理
- 坏处是文档中的WxLogin正常引入js会没有,以下主要解决这个问题
<template>
<div class='inp' v-show='login_type === 1'>
<div>
<div id='login_container'></div>
</div>
</div>
</div>
</template>
<script >
//#region 微信登录
// 登录二维码地址
watch(login_type, (newValue) => {
// 监听,如果登录方式切换为微信,执行微信登录
if (newValue === 1) {
loginWechat();
}
});
onMounted(async () => {
// 以此种方式加载js,后面便可使用WxLogin.如果WxLogin在IDE显示红色,可忽视
const s = document.createElement('script');
s.src = 'https://res.wx.qq.com/connect/zh_CN/htmledition/js/wxLogin.js';
s.async = true;
nextTick(() => {
document.body.appendChild(s);
});
});
const loginWechat = async () => {
// 微信登录, 获取并显示二维码
const qrcode = new window.WxLogin({
self_redirect:true,
id:'login_container',
appid: '你的id',
scope: 'snsapi_login',
redirect_uri: 'http://你的回调地址',
state: 'abb',
style: '',
stylelite: 1, // 自己测试一下0和1,看想要哪种显示方式
fast_login: 1
});
};
//#endregion
</script>
完成以上便可以vue3中正确嵌入并渲染微信登录二维码
vuejs/vue: 是一个用于构建用户界面的 JavaScript 框架,具有简洁的语法和丰富的组件库,可以用于开发单页面应用程序和多页面应用程序。
最近提交(Master分支:3 个月前 )
9e887079
[skip ci] 1 年前
73486cb5
* chore: fix link broken
Signed-off-by: snoppy <michaleli@foxmail.com>
* Update packages/template-compiler/README.md [skip ci]
---------
Signed-off-by: snoppy <michaleli@foxmail.com>
Co-authored-by: Eduardo San Martin Morote <posva@users.noreply.github.com> 1 年前
AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。
更多推荐


所有评论(0)