当前位置: 首页 > article >正文

【企业微信新版sdk】

wecom 的引入使用

  • 一、引入wecom
  • 二、封装函数
  • 三、使用测试

一、引入wecom

  • 1、企业微信 WECOM-JSSDK提供了 npm 和 cdn 两种引入途径。
  • 1.1、 npm 引入
npm install @wecom/jssdk
  • 1.2、安装后引入
import * as ww from '@wecom/jssdk'
  1. 通过 script 标签引入
<script src="https://wwcdn.weixin.qq.com/node/open/js/wecom-jssdk-2.0.2.js"></script>

注:详见: 企业微信

二、封装函数

  1. 制作全局工具函数
import {jssdk} from '../api/approval/approval';
import * as ww from '@wecom/jssdk'
/**
 *** 作者: Lenovo-【Lindon】
 *** 文件名称: weChat
 *** 文件创建日期: 2024/4/10 14:11
 ***
 */
const wwChatMixin = {
    data() {
        return {};
    },
    methods: {
        async wwRegister(sysAgentId, url, callback) {
          debugger;
            const res = await jssdk({sysAgentId: sysAgentId, url: url});
            ww.register({
                corpId: res.config.appId,
                jsApiList: ['selectExternalContact'],
                getConfigSignature() {
                  console.log('ww.getSignature',ww);
                  return ww.getSignature(res.config.signature);
                },
            });

            if (callback && typeof callback === 'function') {
              callback(ww);
            }
        },
    },
};

export default wwChatMixin;

2.通过后端接口 api/approval/approval 后去企业微信的相关数据
3. ww.register 进行注册,获取签名
4. 暴露出去使用
5. 在这里插入图片描述

三、使用测试

<template>
    <div>
        <!--    wecom-->
        <van-button @click="getwxAgentConfig">使用</van-button>
    </div>
</template>

<script>
import wwChatMixin from '../../mixin/weChat';

export default {
    /**
     *** 作者: Lenovo-【Lindon】
     *** 文件名称: wecom
     *** 文件创建日期: 2024/4/10 14:21
     ***
     */
    name: 'Wecom',
    components: {},
    mixins: [wwChatMixin],
    props: {},
    data() {
        return {};
    },
    created() {},
    mounted() {},
    methods: {
        // 使用
        // const url = window.location.href.split('#')[0];
        getwxAgentConfig() {
            this.wwRegister(1, window.location.href.split('#')[0], ww => {
              debugger;
                ww.selectExternalContact({
                    success(res) {
                      console.log('666',res);
                      alert(JSON.stringify(res));
                    },
                });
            });
        },
    },
};
</script>

<style scoped></style>


http://www.kler.cn/a/380986.html

相关文章:

  • 项目审核系统 ---(连接数据库---项目模拟)
  • unity 三维数学 ,角度 弧度计算
  • 柯桥零基础学日语日语培训中为什么不说「ご客様」而是「お客様」?
  • 基于SpringBoot+微信小程序+协同过滤算法+二维码订单位置跟踪的农产品销售平台-新
  • Qt项目实战:红绿灯小程序
  • 服务器作业(2)
  • java.io.FileNotFoundException: Could not locate Hadoop executable: (详细解决方案)
  • JavaCV学习第一课
  • 栈 算法专题
  • SLF4J: Failed to load class “org.slf4j.impl.StaticLoggerBinder“
  • 深入探讨 ESPnet AIShell 项目:ASR 脚本 asr.sh 的实现与解析(一)之脚本前564行,定义各种配置项、函数和条件逻辑
  • Oracle 11g DataGuard GAP处理
  • uniapp实现【时间戳转换为日期格式(年-月-日 时-分-秒)】
  • 10款音视频转文字工具体验记!!!
  • docker构建次数过多导致硬盘爆满,清除
  • mysql上课总结(2)(DCL的所有操作总结、命令行快速启动/关闭mysql服务)
  • 【让中国再次伟大】腾讯开源大语言模型Hunyuan-large,支持高达256K文本序列
  • 基于qt vs下的视频播放
  • [Python学习日记-61] 什么是类与对象?类与对象是什么关系呢?我们该如何定义和使用类与对象呢?
  • 使用 Python 构建代理池并测试其有效性
  • JavaEE初阶----网络原理之TCP篇(一)
  • 10款PDF转Word软件工具的使用感受及其亮点!!!
  • LeetCode:20. 有效的括号(java)
  • 计算机网络网络层笔记
  • golang 实现比特币内核:椭圆曲线有限域的代码实现
  • #渗透测试#SRC漏洞挖掘# 操作系统-windows系统bat病毒