vue - qiankun微前端

本文介绍了微前端的概念及其核心价值,包括技术栈无关、独立开发和部署、增量升级以及独立运行时。重点讲述了如何在主应用中使用qiankun框架集成Vue微应用,包括安装qiankun、注册微应用、处理publicPath以及针对Vue项目的具体配置调整。此外,还强调了Vue微应用在处理history模式路由和webpack打包时的注意事项。
摘要由CSDN通过智能技术生成

什么是微前端

Techniques, strategies and recipes for building a modern web app with multiple teams that can ship features independently. – Micro Frontends

微前端是一种多个团队通过独立发布功能的方式来共同构建现代化 web 应用的技术手段及方法策略。

微前端架构具备以下几个核心价值:

1.技术栈无关
主框架不限制接入应用的技术栈,微应用具备完全自主权

2.独立开发、独立部署
微应用仓库独立,前后端可独立开发,部署完成后主框架自动完成同步更新

3.增量升级
在面对各种复杂场景时,我们通常很难对一个已经存在的系统做全量的技术栈升级或重构,而微前端是一种非常好的实施渐进式重构的手段和策略

4.独立运行时
每个微应用之间状态隔离,运行时状态不共享
微前端架构具备以下几个核心价值:

项目实践

主应用

主应用不限技术栈,只需要提供一个容器 DOM,然后注册微应用并 start 即可。

先安装 qiankun :

$ yarn add qiankun # 或者 npm i qiankun -S

注册微应用并启动:

import {
    registerMicroApps, start } from 'qiankun';

registerMicroApps([
  {
   
    name: 'reactApp',
    entry: '//localhost:3000',
    container: '#container',
    activeRule: '/app-react',
  },
  {
   
    name: 'vueApp',
    entry: '//localhost:8080',
    container: '#container',
    activeRule: '/app-vue',
  },
  {
   
    name: 'angularApp',
    entry: '//localhost:4200',
    container: '#container',
    activeRule: '/app-angular',
  },
]);
// 启动 qiankun
start();

微应用分为有 webpack 构建和无 webpack 构建项目,有 webpack 的微应用(主要是指 Vue、React、Angular)需要做的事情有:

1.新增 public-path.js 文件,用于修改运行时的 publicPath。什么是运行时的 publicPath ?。
注意:运行时的 publicPath 和构建时的 publicPath 是不同的,两者不能等价替代。
2.微应用建议使用 history 模式的路由,需要设置路由 base,值和它的 activeRule 是一样的。
3.在入口文件最顶部引入 public-path.js,修改并导出三个生命周期函数。
4.修改 webpack 打包,允许开发环境跨域和 umd 打包。
主要的修改就是以上四个,可能会根据项目的不同情况而改变。例如,你的项目是 index.html 和其他的所有文件分开部署的,说明你们已经将构建时的 publicPath 设置为了完整路径,则不用修改运行时的 publicPath (第一步操作可省)。

Vue 微应用
以 vue-cli 3+ 生成的 vue 2.x 项目为例,vue 3 版本等稳定后再补充。

1.在 src 目录新增 public-path.js:

if (window.__POWERED_BY_QIANKUN__) 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值