index.vue 1.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849
  1. <script setup lang="ts">
  2. import * as ww from '@wecom/jssdk';
  3. import { WeComLogin } from './api';
  4. // const txt = defineModel()
  5. function createWXQRCode() {
  6. ww.createWWLoginPanel({
  7. el: '#wx_qrcode',
  8. params: {
  9. login_type: 'CorpApp',
  10. appid: 'ww467ec1685e8262e6',
  11. agentid: '1000065',
  12. redirect_uri: 'http://amzads.zositechc.cn/web/',
  13. state: 'Wechat',
  14. scope: 'snsapi_privateinfo',
  15. redirect_type: 'callback',
  16. },
  17. onCheckWeComLogin({ isWeComLogin }) {
  18. console.log(isWeComLogin);
  19. },
  20. onLoginSuccess({ code }) {
  21. // console.log({ code })
  22. handleWeComLogin({ code: code, state: 'Wechat' });
  23. },
  24. onLoginFail(err) {
  25. console.log(err);
  26. },
  27. });
  28. }
  29. async function handleWeComLogin(query) {
  30. try {
  31. const res = await WeComLogin(query);
  32. console.log('res', res);
  33. } catch (error) {
  34. console.log('error:', error);
  35. }
  36. }
  37. </script>
  38. <template>
  39. <div>
  40. <el-button type="primary" @click="createWXQRCode" class="m-2.5">发送</el-button>
  41. </div>
  42. <div id="wx_qrcode" style="height: 300px; width: 300px"></div>
  43. </template>
  44. <style scoped></style>