微前端 之 single-spa 应用demo

这篇博客详细介绍了如何使用single-spa搭建微前端应用,包括子应用和主应用的配置步骤。在子应用中,主要修改了main.js和vue.config.js文件,而在主应用中,重点在于app.vue中的挂载点设置和main.js的配置。目前存在的问题是样式没有隔离,后续将探讨解决方案。
摘要由CSDN通过智能技术生成

一、对于子应用 的修改
1、main.js 文件

import Vue from 'vue'
import singleSpaVue from 'single-spa-vue';
import router from './router';
import App from './App.vue'

Vue.config.productionTip = false

const appOptions = {
   
  el: '#vue', // 主应用中你需要挂载到的地方 的div, id名
  router,
  render: h => h(App)
}
// 如果是在主应用中访问
if(window.singleSpaNavigate){
   
  __webpack_public_path__ = 'http://localhost:10000/'
}

// 单独访问子应用的正常挂载
if(!window.singleSpaNavigate){
   
  delete appOptions.el;
  new Vue(appOptions
作为一个AI语言模型,我无法像人类一样编写代码。但是我可以为您提供single-spa应用的基本理解和示例。 Single-spa是一个前端服务框架,它允许您在同一个页面上使用多个JavaScript框架,例如React、Angular和Vue等。它提供了一个统一的入口点,负责管理不同的应用程序,从而使多个应用程序之间的通信更轻松。 下面是一个简单的single-spa应用示例,它使用React和Vue框架: 1. 首先,您需要使用npm安装single-spa: npm install single-spa --save 2. 然后,创建一个React应用程序: import React from 'react'; import ReactDOM from 'react-dom'; class ReactApp extends React.Component { render() { return ( <div> <h1>React App</h1> <p>Hello, World!</p> </div> ); } } ReactDOM.render(<ReactApp />, document.getElementById('react-app')); 3. 接下来,创建一个Vue应用程序: import Vue from 'vue'; import App from './App.vue'; new Vue({ el: '#vue-app', render: h => h(App) }); 4. 最后,在单一页面应用程序中使用这两个应用程序: import { registerApplication, start } from 'single-spa'; registerApplication( 'react-app', () => import('./react-app'), () => location.pathname === '/react' ); registerApplication( 'vue-app', () => import('./vue-app'), () => location.pathname === '/vue' ); start(); 这将在页面上注册两个应用程序:一个React应用程序和一个Vue应用程序。它使用location.pathname来检查当前路径是否与每个应用程序的路径匹配。如果是,则加载相应的应用程序。 如果您想了解更多关于single-spa的信息,请访问官方网站:https://single-spa.js.org/
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值