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

记录一次无界微前端的简单使用

记录一次无界微前端使用

  • 无界微前端
  • 主应用
  • 子应用
  • nginx配置

无界微前端

https://wujie-micro.github.io/doc/

因为使用的是vue项目主应用和次应用都是 所以用的封装的。
https://wujie-micro.github.io/doc/pack/

主应用

安装 选择对应的版本

# vue2 框架
npm i wujie-vue2 -S
# vue3 框架
npm i wujie-vue3 -S

你可以在主应用新建一个路由

<template><WujieVue width="100%" height="100%" name="logs" :url="url" :props="props" :sync="true"></WujieVue>
</template><script setup>
import { useUserStore } from "@/stores/modules/user";
import { computed, ref } from "vue";
import { useAppStore } from "@/stores/modules/app";const appStore = useAppStore();
const appNow = computed(() => appStore.nowApp);
const userStore = useUserStore();
const url = "http://xxxx";
const props = computed(() => {return {xxx};
});
</script><style></style>

props是共享的数据

子应用

不需要安装依赖包

if (window.__POWERED_BY_WUJIE__) {let app: any;window.__WUJIE_MOUNT = () => {app = createApp(App);app.use(ElementPlus);app.use(pinia);app.use(router);app.mount("#app");const globalStore = useGlobalStore();globalStore.$reset();nextTick(() => {if (window.$wujie) {const { token, userInfo, nowApp, appList } = window.$wujie.props;// xxxx 处理主应用共享的数据}});};window.__WUJIE_UNMOUNT = () => {app.unmount();};/*由于vite是异步加载,而无界可能采用fiber执行机制所以mount的调用时机无法确认,框架调用时可能vite还没有加载回来,这里采用主动调用防止用没有mount无界mount函数内置标记,不用担心重复mount*/window.__WUJIE.mount();
}else{
// 正常amount
}

nginx配置

因为会跨域 所以静态资源要允许跨域,子应用添加允许主应用跨域。

    location ~ .*\.(js|css)?${# 全局跨域设置add_header 'Access-Control-Allow-Origin' 'xxxx';expires      12h;error_log /dev/null;access_log /dev/null;}

其他的 比如接口什么的,服务端也要放通对应的地址。或者都交给nginx。

相关文章:

  • Ubuntu 上手动安装 Go 环境并解决“可执行文件格式错误”
  • Mac「brew」快速安装Redis
  • 输入电抗器和输出电抗器的作用-杭州干扰净电子科技
  • 二叉树的遍历(广度优先搜索)
  • Springboot 手搓 后端 滑块验证码生成
  • 【GCC bug】libstdc++.so.6: version `GLIBCXX_3.4.29‘ not found
  • ES历史版本下载
  • uniapp-商城-36-shop 购物车 选好了 进行订单确认2 支付方式颜色变化和颜色滤镜filter
  • 高级java每日一道面试题-2025年4月25日-基础篇[反射篇]-在运行时,如何判断某个类是否实现了特定的接口或扩展了某个父类?
  • 算力网络(CFN)在跨校联合科研中的应用:安全性挑战与联邦调度实践
  • 《Keras 3 :使用 TFServing 提供 TensorFlow 模型》
  • PWNOS:2.0(vulnhub靶机)
  • 前端技术Ajax实战
  • 06-stm32时钟体系
  • 企业部署Power BI 报表服务器,在第三方系统嵌套该报表服务器,并实现单点登录
  • 【linux】Chrony服务器
  • HTML 详解:从基础结构到语义标签
  • 【音视频】⾳频处理基本概念及⾳频重采样
  • NAT地址转换
  • 使用 AutoGen 与 Elasticsearch
  • 乌方称泽连斯基与特朗普进行简短会谈
  • 一年吸引30多万人次打卡,江苏这个渔村是怎么做到的?
  • 一图读懂|上海海关公布一季度数据:钢材出口增长超143%
  • 30天内三访中国,宝马董事长:没有一家公司可以在全球价值链外独立运行
  • 去年立案侦办侵权假冒案件3.7万起,公安部公布13起案例
  • 财政部部长:中方主张通过平等对话协商解决贸易和关税争议