成人在线亚洲_国产日韩视频一区二区三区_久久久国产精品_99国内精品久久久久久久

您的位置:首頁技術文章
文章詳情頁

基于Vue實現微前端的示例代碼

瀏覽:17日期:2023-01-25 08:59:32

   前端微服務化一直是前端社區的一個熱門話題,早在2018年就有不少開發者提出過各種解決方案。或許是未得精髓,個人認為基于Web Components的實現脫離整體打包邏輯的,難以工程化。直到遇到了vue-cli 3,子模塊打包的問題得以迎刃而解。2019年秋,團隊內部初步實現前端分布式開發,解決了集中式開發部署的“老大難”問題。個人認為,隨著WebAssembly等技術的興起,“前端后移”越來越明顯,前端微服務會成為大前端的一個趨勢。下面簡單分享下本人對前端微服務的一些拙見。

前言

   目前的前端技術,大部分是基于JavaScript棧極其衍生的技術棧體系。從當年被人戲稱為“玩具語言”發展到今天,JavaScript的經歷可謂命途多舛。早期缺少必要的規范,讓JavaScript的生態自由的有點泛濫。本就是解析型語言,還多重標準,誰也不能預測下一行代碼會產生什么結果。隨著Node.js的到來,“前端后移”歷史的車輪開始轉動了。前端的打包不再是簡單地混淆壓縮一下,出現了import/export模塊的概念,后端工程師嗅到了熟悉的味道。W3C的ES2015標準,前端模塊化開始深入人心,Webpack逐漸成了前端開發的事實標準,TpyeScript等強類型衍生語言也開始出現,大前端圈空前繁榮。隨著大量了后端語言(特別是Java這類面向對象語言)的標準加入,前端開發終于從Web開發中脫離出來自立門戶。前端工程化伴隨著“前后端分離”的潮流,席卷了整個互聯網。GitHub等開源社區上前端項目如雨后春筍般涌現。

痛點

   前端工程化固然是好事,但前端項目一多就存在難以整合的問題。特別是前端技術棧不一致的情況下,React團隊開發的小功能不能被Vue團隊復用。前端工程也期待能擁有后端的遠程調用RPC接口。通過調用前端RPC接口就能跨平臺渲染。這就好比是JVM平臺都能解析class字節碼一樣方便。目前整合不同系統的方案大部分是使用iframe簡單嵌套,不優雅但能用。谷歌提出的WebAssembly可能是不錯的方案,但離商用太遠。

方案

目前如何有效整合前端應用呢?綜合考慮了新老系統的特點,大致分了三種情況。

基于Vue實現微前端的示例代碼

關鍵代碼如下:

<div class='puzzle-box'> <div v-for='puzzle in puzzles' :key='puzzle.id' :style='’height:’ + puzzle.height + ’;width:’ + puzzle.width'> <div v-if='puzzle.type === ’iframe’'> <iframe :src='http://www.piao2010.com/bcjs/puzzle.src' :style='’width:100%;height:’ + puzzle.height '></iframe> </div> <div v-if='puzzle.type === ’module’'> <puzzle-module v-bind:url='puzzle.url'></puzzle-module> </div> <div v-if='puzzle.type === ’native’'> <div v-append='puzzle.content' :style='’width:100%;height:’ + puzzle.height'></div> </div> </div></div><script> const content=`<h1>前端開發迭代計劃</h1><table class='table table-bordered table-striped table-hover'><tr><th>序號</th><th>需求</th><th>優先級</th><th>負責人</th><th>計劃完成日期</th></tr><tr><td>1</td><td>大數據的自助分析平臺</td><td>高</td><td>工程師A</td><td>2020-04-08</td></tr><tr><td>2</td><td>自定義模板、調用時傳入XML,引擎生成報表結果</td><td>高</td><td>工程師A</td><td>2020-04-08</td></tr></table>` const puzzles = [ { id: 1, type: ’module’, url: ’http://localhost:9081/list.js’,width: ’100%’,height: ’400px’}, { id: 2, type: ’native’, content: content, width: ’50%’, height: ’400px’}, { id: 3, type: ’iframe’, src: ’http://cn.bing.com/’,width: ’50%’,height: ’400px’}, ]</script>

iframe嵌入

iframe嵌入是是目前大多數人使用的方式,基本沒有開發量。

原生html嵌入

這種方式外部接口提供html文本,本地系統劃一塊地方出來給你自己渲染,如劃一個600x800的div用來渲染報表。使用vue-append作為渲染組件。這種方式可以擺脫iframe,自由度也比較大。缺點是不容易實現規范化,有點像內嵌的廣告頁面。

模塊化嵌入

使用模塊打包的概念,通過webpack將子模塊各個分拆獨立打包成模塊再通過靜態文件方式加載到外部系統做展現。這也是目前團隊內部使用的方案。通過遍歷模塊目錄(一般就是業務vue頁面)批量生成配置文件。

....... function readDirectory(directory) { fs.readdirSync(directory).forEach((file) => { const fullPath = path.resolve(directory, file); if (fs.statSync(fullPath).isDirectory()) { if (scanSubDirectories) readDirectory(fullPath); return; } if (!regularExpression.test(fullPath)) return; //files[directory.substring(directory.lastIndexOf(path.sep))+ path.sep +file] = fullPath files[directory.substring(parentPath.length+1)+ path.sep +file] = fullPath //console.log(files) }); } .......

最終就會按模塊輸出打包好的js文件,發布是可以實現按需集成。

基于Vue實現微前端的示例代碼

到此這篇關于基于Vue實現微前端的文章就介紹到這了,更多相關基于Vue實現微前端內容請搜索好吧啦網以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持好吧啦網!

標簽: Vue
相關文章:
成人在线亚洲_国产日韩视频一区二区三区_久久久国产精品_99国内精品久久久久久久
久久精品观看| 一区二区视频在线看| 亚洲欧洲av另类| 成人动漫一区二区在线| 欧美三电影在线| 日本va欧美va欧美va精品| 国产精品久久久一区二区| 亚洲免费av高清| 激情综合久久| 亚洲欧美日韩精品久久久久| 欧美日本中文| 欧美国产乱子伦| 欧美日韩福利| 国产精品初高中害羞小美女文| 午夜精品偷拍| 国产精品国模大尺度视频| 欧美色综合网| 亚洲欧美综合在线精品| 91久久精品国产91久久性色tv | 日韩欧美高清一区| 国产suv一区二区三区88区| 欧美老肥妇做.爰bbww视频| 经典三级在线一区| 91精品国产综合久久国产大片| 国产精品99久| 欧美精品一区二区不卡| 欧美日韩亚洲一区二区三区四区| 国产欧美精品区一区二区三区| 午夜久久福利| 亚洲精品国产一区二区精华液 | 久久婷婷色综合| 91浏览器入口在线观看| 国产精品久久久一本精品| 亚洲电影自拍| 亚洲一区二区视频在线| 久久久综合网| 国产精品自拍网站| 欧美精品一区二区蜜臀亚洲| 欧美日韩另类丝袜其他| 中文字幕一区二区三区视频 | 欧美一级片免费看| 成人h动漫精品一区二| 国产无遮挡一区二区三区毛片日本| 欧美人与禽猛交乱配| 一区二区三区四区蜜桃| 久久精品中文| 国产精品一区免费视频| 国产午夜精品美女毛片视频| 亚洲国产一区二区三区a毛片 | 国产亚洲短视频| 激情综合激情| 亚洲高清一区二区三区| 欧美亚洲一区二区在线| 国产99久久久国产精品潘金| 日本一区二区三区高清不卡| 一区二区三区四区五区在线| 免费看日韩精品| 日韩欧美色综合网站| 欧美日韩国产不卡在线看| 亚洲一区二区高清| 欧美日韩精品三区| 欧美激情1区2区| 一区二区三区四区在线播放 | 久久不射网站| 国产综合色精品一区二区三区| 精品国产a毛片| 亚洲精一区二区三区| 日本午夜一本久久久综合| 日韩一区和二区| 精品999网站| 裸体一区二区三区| 久久精品在这里| 亚洲欧美日韩一区在线观看| 国产精品一区在线观看乱码 | 成人午夜大片免费观看| 国产精品入口麻豆九色| 久久精品伊人| 91色porny| 婷婷成人激情在线网| 日韩欧美一二三四区| 激情久久一区| 久久精品999| 中文在线免费一区三区高中清不卡| 国产精品手机视频| 顶级嫩模精品视频在线看| 亚洲精品水蜜桃| 日韩精品一区二区三区在线播放 | 91浏览器在线视频| 亚洲成人动漫精品| 欧美大白屁股肥臀xxxxxx| 亚洲成人直播| 国产毛片精品一区| 亚洲女与黑人做爰| 日韩小视频在线观看专区| 亚洲国内精品| 国产在线精品免费av| 亚洲欧美日本韩国| 日韩一卡二卡三卡四卡| 99re6热在线精品视频播放速度| 激情欧美一区二区三区在线观看| 专区另类欧美日韩| 欧美一区二区三区不卡| 国产午夜精品一区二区三区欧美 | 成人做爰69片免费看网站| 亚洲一区视频在线观看视频| 欧美一级理论片| 国产精品久久久久毛片大屁完整版 | 欧美成人一区二区三区在线观看 | 欧美三区在线观看| 国产精品多人| 国产精品一二三在| 亚洲美女区一区| 欧美成人bangbros| 日本福利一区二区| 亚洲午夜一级| 成人黄色小视频| 免费成人美女在线观看.| 亚洲精品国产一区二区精华液| 欧美videossexotv100| 免费在线亚洲| 欧美91精品| 成人午夜碰碰视频| 久久www免费人成看片高清| 一区二区三区四区亚洲| 久久久久久黄色| 欧美日韩国产美| 欧美一区=区| 欧美系列一区| 粉嫩av一区二区三区在线播放| 日韩电影一区二区三区四区| 亚洲欧美一区二区在线观看| 精品精品欲导航| 欧美色图天堂网| 久久不射2019中文字幕| 欧美午夜一区| 不卡av电影在线播放| 狠狠v欧美v日韩v亚洲ⅴ| 香蕉影视欧美成人| 亚洲色图视频免费播放| 国产视频一区在线观看| 日韩一区二区三区四区| 欧美日韩精品久久久| 久久九九精品| 国产精品一区亚洲| 韩国久久久久| 欧美精品在线一区| 色综合婷婷久久| 国产**成人网毛片九色 | 精品精品欲导航| 91精品综合久久久久久| 老司机久久99久久精品播放免费| 在线视频欧美一区| 日韩午夜在线| 在线播放不卡| 国内精品美女在线观看| 91在线精品一区二区三区| 丁香婷婷深情五月亚洲| 国产精品一二三四五| 国产一区二区在线看| 久久国产生活片100| 毛片不卡一区二区| 日日夜夜精品视频免费| 亚洲6080在线| 午夜国产精品一区| 天天综合网天天综合色| 亚洲国产精品嫩草影院| 亚洲国产精品一区二区尤物区| 亚洲精品乱码久久久久久日本蜜臀| 中文字幕综合网| 亚洲日本在线视频观看| 亚洲乱码国产乱码精品精98午夜 | 亚洲男女一区二区三区| 亚洲欧洲av一区二区三区久久| 99精品国产一区二区三区不卡| 国产精品综合在线视频| 国产乱码一区二区三区| 高清国产一区二区| 成人黄色国产精品网站大全在线免费观看 | 制服丝袜一区二区三区| 欧美日韩一区精品| 4438x成人网最大色成网站| 91精选在线观看| 日韩欧美综合一区| 精品国产乱码久久久久久久久| 精品国产91洋老外米糕| 国产人久久人人人人爽| 欧美—级在线免费片| 国产精品久久毛片a| 国产精品家庭影院| 一区二区三区四区不卡在线| 亚洲午夜日本在线观看| 青青草精品视频| 久99久精品视频免费观看| 国产精品伊人色| av在线一区二区| 欧美日韩hd| 亚洲一区二区三区四区中文| 91成人免费网站| 日韩欧美国产精品一区| 国产精品天干天干在观线|