vue-企业微信绑定和解绑

2023-05-16

一、企业微信绑定解绑

项目中需要对账号进行企业微信的绑定和解绑

企业微信页面显示:

<FormItem label="企业微信:">
  {{account.wechat}}
  <span class="link" @click="bindWechat" v-if="!account.wechat">绑定</span>
  <span class="link" @click="unBindWehat" v-else>解绑</span>
</FormItem>

二维码模态框:

<Modal v-model="bindWechatModal">
  <div>
    <iframe height="400" width="400" frameborder="0" :src="bindWechatUrl"></iframe>
  </div>
</Modal>

1.点击绑定微信,显示二维码模态框

bindWechat() {
  let param = {
    redirectUri: location.href.toString().split('?')[0]
  };
  R.Account.buildAuthorizationUrl(param).then(resp => {
    if (resp.code) {
      this.bindWechatModal = true;
      this.bindWechatUrl = resp.body;
    }
  });
}

2.企业微信扫描后,会重新刷新页面
关键就在页面重新渲染,调用mounted里的方法,
扫描后此时this.$route.query.code是有的,所以会调用bindCpAccount方法

mounted() {
  if (this.$route.query.code && !this.account.wechat) {
    this.bindCpAccount();
  }
}

绑定接口

bindCpAccount() {
  let param = {
    code: this.$route.query.code
  };
  R.Account.bindWechat(param).then(resp => {
    if (resp.code) {
      this.$Message.success('绑定成功');
      this.account.wechat = resp.body;
      this.bindWechatModal = false;
      this.$router.push(this.$route.path);
    }
  });
}

此时才算是成功绑定了企业微信,页面也会重新获取到企业微信数据。

3.解绑企业微信:
点击解绑

unBindWehat() {
  this.$Confirm('确定要解绑当前企业微信吗?', '温馨提示').then(() => {
    R.Account.unbindWechat().then(resp => {
      if (resp.code) {
        // window.location.href = this.$route.path; // 解绑后不刷新页面,否则不能出现重新绑定的提示
        this.account.wechat = '';
        // 提示绑定新企业微信
        this.$Message.info('该账号未绑定企业微信,绑定后进行正常操作');
        this.bindWechat();
      } else {
        this.$Message.warn(resp.msg);
      }
    });
  }).catch(() => {});
},

解绑调接口后分两种情况:
(1)解绑后提示重新绑定
不需要 window.location.href = this.$route.path;
需要 this.bindWechat();
以上代码就是提示重新绑定的情况。
(2)解绑后不提示重新绑定
需要 window.location.href = this.$route.path;
不需要 this.bindWechat();

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

vue-企业微信绑定和解绑 的相关文章

  • 创建镜像(更新与构建镜像)

    创建镜像 有时从Docker镜像仓库中下载的镜像不能满足我们的要求 xff0c 此时可以基于这个镜像 xff08 基础镜像 xff09 封装一个自 己的镜像 两种方式 xff1a 更新镜像 xff1a 使用docker commit命令构建
  • (十)CMake链接已有的动态库

    使用一个已经存在的动态库 xff0c 需要用到CMake中两个命令 xff0c 分别是 xff1a link directoriestarget link libraries 下面先介绍以下两个命令的格式及其含义 xff0c 最后是一个使用

随机推荐

  • ROS入门21讲笔记(四)自定义话题消息类型和使用

    除了ROS内置消息外 xff0c 我们还能自定义消息 这一次我们不再与海龟较劲 xff0c 而是自定义一个订阅消息类型 xff0c 让订阅者和发布者通过这个结构进行数据通信 一 如何自定义话题消息 xff1f 话题消息是以 msg结尾的文件
  • ROS入门21讲笔记(七)自定义消息消息类型和使用

    这一节主要是学习如何自定义一个服务类型并使用它 一 如何自定义服务消息 xff1f 服务数据是以 srv结尾的文件 xff0c 是一个用于描述ROS服务信息简单文本文件 xff0c 用于生成不同语言消息的源代码 srv文件存放在packag
  • ROS入门21讲笔记(十二)常用可视化工具

    一 QT类可视化工具 1 1 rqt console rqt console 为显示和过滤ROS信息提供了一个GUI插件 1 2 rqt plot rqt plot使用不同的绘图后端提供数值可视化功能 1 3 rqt Image view
  • (二)CMake 使用头文件

    一 include directories 该命令用于增加一个编译头文件 其基本语法是 xff1a include directories span class token punctuation span span class token
  • cargo 宏展开遇到的问题

    最近学习rust xff0c 看到宏展开命令 span class token comment 单独文件 span rustc Z unstable options pretty span class token operator 61 s
  • 工程师笔记|常见的嵌入式软件工程师面试题

    Q xff1a 什么是ISR xff1f A xff1a ISR 是指中断服务程序 这些是存储在特定内存地址的函数 xff0c 当发生某种类型的中断时会调用这些函数 Cortex M 处理器系列具有管理中断执行的 NVIC Q xff1a
  • 计算机中的速率、带宽、时延、利用率解读

    计算机网络的性能一般是指它的几个重要的性能指标 但除了这些重要的性能指标外 xff0c 还有一些非性能特征 xff08 nonperformance characteristics xff09 也对计算机网络的性能有很大的影响 那么 xff
  • 手把手教你写链表,小学生看了都说好~

    摘要 xff1a 明明我们在之前已经接触了数组 xff0c 感到数组已经是万能的数据存储位置了 但是 xff0c 如果我们一直在使用比较复杂的数据 xff08 也就是比较多的数据时 xff09 xff0c 肯定会感到很反感 因为对于数组这种
  • 15-JavaScript高级程序设计-创建对象

    一 创建对象 创建单个对象 xff1a Object构造函数 new Object 对象字面量 xff08 参见8 Object amp Array xff09 创建多个对象 xff1a 以下7种方式 1 工厂模式 span class t
  • FreeRtos源码分析之启动任务调度vTaskStartScheduler(二)

    一 概述 FreeRtos在创建任务之后 xff0c 需要启动任务调度器才能使任务正常有序的运行 任务调度器的开启依赖于底层硬件 xff0c 对于CortexM3内核而言 xff0c 任务调度器需要用到中断和滴答定时器 FreeRtos在对
  • FreeRtos源码分析之任务状态管理(三)

    一 概述 FreeRtos的每一个任务都有一个对应的优先级 xff0c 较高优先级的任务具有优先运行的权利 xff0c 当高优先级的任务调用系统的延时函数或者需要阻塞等待某些信号时 xff0c 会让出CPU的使用权 xff0c 从而使低优先
  • FreeRtos源码分析之任务切换原理(四)

    一 CortexM3中断优先级 CortexM3支持多达240个外部中断和16个内部中断 xff0c 每一个中断都对应一个中断都对应一个优先级寄存器 每一个优先级寄存器占用8位 xff0c STM32采用其中的高四位来表示优先级 xff0c
  • ubuntu切换python版本

    一 概述 在ubuntu环境下进行嵌入式开发 xff0c 我们在进行不同的项目开发时 xff0c 可能会遇到python环境不统一的情况 这时 xff0c 我们可以通过update alternatives来方便更新ubuntu下的pyth
  • 本地Windows远程连接阿里云服务器图形界面(使用vnc viewer)

    文章目录 前言Motivation of writing1 场景说明2 给阿里云服务器安装图形界面3 给服务器配置VNC Server4 让服务器放行5901端口5 本地windows配置vnc viewer总结 标题 xff1a 本地Wi
  • 十分钟教你配置frp实现内网穿透

    十分钟教你配置frp实现内网穿透 一 frp的作用 利用处于内网或防火墙后的机器 xff0c 对外网环境提供 http 或 https 服务 对于 http https 服务支持基于域名的虚拟主机 xff0c 支持自定义域名绑定 xff0c
  • 5.7.4 ARM微控制器外设:I2C编程实例—加速度传感器

  • Jetson带CUDA编译的opencv4.5安装教程与踩坑指南,cmake配置很重要!

    环境 xff1a Jetson NX 43 Jetpack4 4 43 Ubuntu18 04 0 jtop前后对比1 安装教程2 踩坑指南2 1 cv2 error OpenCV 4 4 0 tmp pip build 2do2xloi
  • C++ 获取系统当前时间

    C 43 43 获取系统当前时间 c 43 43 time函数 C 43 43 的日期和时间函数获取系统当前时间实例大体思路具体使用与解析四 回顾与梳理 c 43 43 time函数 C 43 43 的日期和时间函数 C 43 43 标准库
  • KAFKA结构图

    转载 https blog csdn net sillyzhangye article details 86181323 utm medium 61 distribute pc relevant none task blog BlogCom
  • vue-企业微信绑定和解绑

    一 企业微信绑定解绑 项目中需要对账号进行企业微信的绑定和解绑 企业微信页面显示 xff1a span class token operator lt span FormItem label span class token operato