首页 > 其他分享 >使用qiankun搭建微服务 (通信部分)2

使用qiankun搭建微服务 (通信部分)2

时间:2022-09-20 19:13:44浏览次数:65  
标签:name 通信 qiankun msg state action prev 搭建

本章介绍一下qiankun的主和子应用之间的通信,原理其实是发布订阅模式,类似vue的eventbus,首先主和子应用里面都要有一个初始化的action,如下:

import { initGlobalState } from "qiankun";

/**
 * 初始的state
 */
const state = {
  name: "child-app",
  msg: "子应用消息",
};

/**
 * 初始化本应用全局的state
 */
const action = initGlobalState(state);

export { action };

此时只需要在发送和接收的地方使用这个action就可以了,代码如下:

<template>
  <div class="hello">
    <input type="text" v-model="context" />
    <button @click="clickHandler">发送消息到主应用</button>
  </div>
</template>

<script>
import { action } from "../actions";
export default {
  name: "HelloWorld",
  props: {
    msg: String,
  },
  data() {
    return {
      context: "",
    };
  },
  mounted() {
    this.GlobalStateChange();
  },
  methods: {
    /**
     * 此页面接收到消息时候的回调函数,类似事件总线on的一方
     */
    GlobalStateChange() {
      action.onGlobalStateChange((state, prev) => {
        // state: 变更后的状态; prev 变更前的状态
        console.log(state, prev);
      });
    },
    clickHandler() {
      /**
       * 发送消息,类似eventbus的dispatch
       */
      action.setGlobalState({
        name: "李四",
        msg: "天天向上",
        address: "林荫大道",
        cContext: this.context,
      });
    },
  },
};
</script>

主和子应用都是类似这样的写法,用到的方法主要就是

onGlobalStateChange监听和
setGlobalState发送
效果如下:

 

 

 

 

标签:name,通信,qiankun,msg,state,action,prev,搭建
From: https://www.cnblogs.com/llcdbk/p/16712167.html

相关文章

  • Centos 7 web 环境搭建
    1、Xshell5为了方便管理操作服务器,这里采用xshell5来连接服务器,使用ssh证书,端口号22,对于购买的与主机需要开放相应的端口。如下是连接成功的提示:[c:\~]$openCon......
  • 只需 6 步,你就可以搭建一个云原生操作系统原型
    简介: 当云原生和操作系统这两个热点话题相遇的时候,会发生什么故事?编者按:过去的三年对基础软件领域来说是不平凡的三年,是波涛汹涌的三年。随着国际形势和行业格......
  • 快速搭建 Git 服务器[Windows版]
    服务器搭建下载下载JDK:https://www.oracle.com/technetwork/java/javase/downloads/下载Gitblit:http://gitblit.com/解压解压缩下载的压缩包即可,无需安装。创......
  • nodeJs + npm 环境搭建
    目录1、安装nodeJS2、配置系统环境变量PATH=nodejs安装目录3、在nodejs安装根目录创建node_cache、node_global两个文件夹4、配置npm5、查看配置是否生效(win+R启动终端......
  • 直播平台搭建源码,通过 JS 读取本地图片并预览在页面中
    直播平台搭建源码,通过JS读取本地图片并预览在页面中 <!DOCTYPEhtml><html><head><metacharset="UTF-8"><metahttp-equiv="X-UA-Compatible"content="IE=edge"><me......
  • CA认证及http通信过程
    CACA(CertificateAuthority)被称为证书授权中心,是数字证书发放和管理的机构。根证书是CA认证中心给自己颁发的证书,是信任链的起始点。安装根证书意味着对这个CA认证中心......
  • ELK搭建自己的日志系统
    在开发过程中,日志会直接在控制台打印方便查看,而生产环境下应该保存为文件,以便以后查阅。随着项目规模越来越大,导致日志数据累计巨大,想要快速从文件中找到几乎是不可能......
  • 搭建本地仓库并修改相应配置 实验报告
    实验任务搭建本地仓库和修改相应的配置实验环境一台centos7实验步骤1、将镜像放在光驱里找到左上角虚拟机  点开找到设置  找到cd/dvd点开  把已......
  • 搭建FRP服务
    搭建FRP服务由于开学在外实习,无法使用学校数据库资源,但是学校里有台服务器,通过这台服务器虚拟了一个PC,但是没有公网IP,所以想着通过线上服务器搭建一个Frp服务来访问这台虚......
  • 搭建私有CA服务器
    配置私有CA服务器#CA搭建命令#进入到CA目录下cd/etc/pki/CA#打开一个子shell,用openssl生成一个私钥信息(umask077;opensslgenrsa-outprivate/cakey.pem1......