Vue+Microapp實(shí)現(xiàn)微前端的示例詳解
一、創(chuàng)建項(xiàng)目
1. 創(chuàng)建vite+vue3+Microapp主應(yīng)用:
# 全局安裝vite npm install -g vite # 指定目錄,創(chuàng)建vite+vue3+Microapp主應(yīng)用 cd your-project-directory vite create my-microapp --template vue-ts
2. 創(chuàng)建vue2+element子應(yīng)用:
# 全局安裝vue-cli npm install -g vue-cli # 使用vue2-cli創(chuàng)建vue2+element子應(yīng)用 vue create my-subapp
注意:子應(yīng)用中應(yīng)使用vue2來開發(fā),因?yàn)関ue2和vue3不兼容。
二、配置主應(yīng)用
1. 安裝micro-app:
yarn add micro-app
2. 修改App.vue:
<template> <div> <h1>Microapp - Vue3 Main</h1> <div style="display: flex;justify-content: space-between;"> <div style="width: 196px;height: 800px;padding: 20px;background: #eee;"> <router-link to="/">Home</router-link> <br> <router-link to="/about">About</router-link> <br> <div id="subapp-container"></div> </div> <router-view/> </div> </div> </template> <script lang="ts"> import { Component, Vue } from "vue-property-decorator"; import { registerMicroApps, start } from "micro-app"; @Component({}) export default class App extends Vue { mounted() { // 注冊子應(yīng)用 registerMicroApps([ { name: "subapp1", entry: "http://localhost:3001", container: "#subapp-container", activePath: "/subapp", }, ]); // 啟動微前端 start({ mode: "history" }); } } </script>
三、配置子應(yīng)用
1. 安裝micro-app:
yarn add micro-app
2. 在main.js中注冊子應(yīng)用:
import { registerMicroApps, start } from "micro-app"; registerMicroApps([ // 添加一個主應(yīng)用地址,使子應(yīng)用可以選擇返回到主應(yīng)用 { name: "main-app", entry: "http://localhost:3000", container: "#subapp-container", activePath: "/", }, ]); start();
四、啟動項(xiàng)目
1. 啟動vite+vue3+Microapp主應(yīng)用:
cd my-microapp yarn dev
2. 啟動vue2+element子應(yīng)用:
cd my-subapp npm run serve
五、打包部署發(fā)布
1. 分別打包vite+vue3+Microapp主應(yīng)用和vue2+element子應(yīng)用:
cd my-microapp yarn build cd my-subapp npm run build
2. 部署發(fā)布時,可以將vite+vue3+Microapp主應(yīng)用和vue2+element子應(yīng)用分別部署在不同的服務(wù)器上,并在主應(yīng)用中配置子應(yīng)用的地址,然后就可以訪問微前端系統(tǒng)了。
注意:微前端應(yīng)用部署后,要確保子應(yīng)用的靜態(tài)資源能夠被正確加載。如果主應(yīng)用和子應(yīng)用使用域名不同,那么需要配置跨域地址。
到此這篇關(guān)于Vue+Microapp實(shí)現(xiàn)微前端的示例詳解的文章就介紹到這了,更多相關(guān)Vue Microapp微前端內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
vue控制臺警告Runtime directive used on compon
這篇文章主要為大家介紹了vue控制臺警告Runtime directive used on component with non-element root node解決,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-06-06vue 詳情跳轉(zhuǎn)至列表頁實(shí)現(xiàn)列表頁緩存
這篇文章主要介紹了vue 詳情跳轉(zhuǎn)至列表頁實(shí)現(xiàn)列表頁緩存,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2019-03-03Vue?3?中使用?vue-router?進(jìn)行導(dǎo)航與監(jiān)聽路由變化的操作
在Vue3中,通過useRouter和useRoute可以方便地實(shí)現(xiàn)頁面導(dǎo)航和路由變化監(jiān)聽,useRouter允許進(jìn)行頁面跳轉(zhuǎn),而useRoute結(jié)合watch可以根據(jù)路由變化更新組件狀態(tài),這些功能為Vue3應(yīng)用增加了靈活性和響應(yīng)性,使得路由管理更加高效2024-09-09vue路由第二次進(jìn)入頁面created和mounted不執(zhí)行問題及解決
這篇文章主要介紹了vue路由第二次進(jìn)入頁面created和mounted不執(zhí)行問題及解決方案,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2022-12-12spring-cloud-stream的手動消息確認(rèn)問題
這篇文章主要介紹了spring-cloud-stream的手動消息確認(rèn)問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2023-05-05Vue實(shí)現(xiàn)動態(tài)圓環(huán)百分比進(jìn)度條
這篇文章主要為大家詳細(xì)介紹了Vue實(shí)現(xiàn)動態(tài)圓環(huán)百分比進(jìn)度條,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下2021-09-09uniapp?APP中內(nèi)嵌webview的H5與APP相互通訊動態(tài)傳參代碼示例
最近外部公司的app要接入我司的uni H5項(xiàng)目,所以這篇文章主要給大家介紹了關(guān)于uniapp?APP中內(nèi)嵌webview的H5與APP相互通訊動態(tài)傳參的相關(guān)資料,需要的朋友可以參考下2024-04-04