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

东台建设局网站关键一招

东台建设局网站,关键一招,企业网站设计总结,做动态文字的网站目前微前端已经是很成熟的技术了,各大公司都推出了自己的微前端框架,比如蚂蚁的qiankun,京东的micro-app,如果你的子应用不使用vite构建的话,我会更加推荐后者,micro-app使用更加简单,micro-app…

目前微前端已经是很成熟的技术了,各大公司都推出了自己的微前端框架,比如蚂蚁的qiankun,京东的micro-app,如果你的子应用不使用vite构建的话,我会更加推荐后者,micro-app使用更加简单,micro-app并没有沿袭single-spa的思路,而是借鉴了WebComponent的思想,是目前市面上接入微前端成本最低的方案。

这次集成的是开源框架GoView,GoView 是一个高效的拖拽式低代码数据可视化开发平台,将图表或页面元素封装为基础组件,无需编写代码即可制作数据大屏,减少心智负担 

 正式开始构建项目:

1,主应用

        主应用使用的是vue-element-template开源后台管理框架,思路都一样,首先在路由中添加一个页面,在目录结构也记得添加

  {path: '/chat',component: Layout,children: [{path: 'index',name: 'chat',component: () => import('@/views/chat/index'),meta: { title: 'chat', icon: 'chat' }}]},

        然后再路由出口页面,这里是AppMain,添加要挂载的元素

<template><section class="app-main"><transition name="fade-transform" mode="out-in"><router-view :key="key" /></transition>//子应用要挂载的dom<div id="container"></div></section>
</template>

        接下来安装qiankun

npm i qiankun

        然后在main.js中注册

import { registerMicroApps, start } from 'qiankun';
//注册子应用,可以注册多个
registerMicroApps([{name: 'vue-app',//子应用名称entry: '//localhost:3000',//子应用端口container: '#container',//挂在节点activeRule: '/chat',//匹配路径},
]);start();

2,子应用

        下载goView源码:https://gitee.com/dromara/go-view,安装依赖,运行

        它是vite构建的应用,所以需要用到对应的支持插件

npm install vite-plugin-qiankun

        安装完成后,打开vite.config.js,做如下修改,已经备注

import { defineConfig } from 'vite'
import vue from '@vitejs/plugin-vue'
import { resolve } from 'path'
import { OUTPUT_DIR, brotliSize, chunkSizeWarningLimit, terserOptions, rollupOptions } from './build/constant'
import viteCompression from 'vite-plugin-compression'
import { viteMockServe } from 'vite-plugin-mock'
import monacoEditorPlugin from 'vite-plugin-monaco-editor'
import qiankun from 'vite-plugin-qiankun'//导入依赖function pathResolve(dir: string) {return resolve(process.cwd(), '.', dir)
}export default defineConfig({base: '/',// 路径重定向resolve: {alias: [{find: /\/#\//,replacement: pathResolve('types')},{find: '@',replacement: pathResolve('src')},{find: 'vue-i18n',replacement: 'vue-i18n/dist/vue-i18n.cjs.js', //解决i8n警告}],dedupe: ['vue']},// 全局 css 注册css: {preprocessorOptions: {scss: {javascriptEnabled: true,additionalData: `@import "src/styles/common/style.scss";`}}},plugins: [vue(),monacoEditorPlugin({languageWorkers: ['editorWorkerService', 'typescript', 'json', 'html']}),viteMockServe({mockPath: '/src/api/mock',// 开发打包开关localEnabled: true,// 生产打包开关prodEnabled: true,// 打开后,可以读取 ts 文件模块。 请注意,打开后将无法监视.js 文件supportTs: true,// 监视文件更改watchFiles: true}),// 压缩viteCompression({verbose: true,disable: false,threshold: 10240,algorithm: 'gzip',ext: '.gz'}),//添加qiankun("vue-app", {// 微应用名字,与主应用注册的微应用名字保持一致useDevMode: true,}),],build: {target: 'es2015',outDir: OUTPUT_DIR,// minify: 'terser', // 如果需要用terser混淆,可打开这两行// terserOptions: terserOptions,rollupOptions: rollupOptions,brotliSize: brotliSize,chunkSizeWarningLimit: chunkSizeWarningLimit},//添加server: {origin: 'http://localhost:3000', //项目baseUrl,解决主应用中出现静态地址404问题},
})

        然后打开main.ts

import { createApp } from 'vue'
import App from './App.vue'
import router, { setupRouter } from '@/router'
import i18n from '@/i18n/index'
import { setupStore } from '@/store'
import { setupNaive, setupDirectives, setupCustomComponents, initFunction } from '@/plugins'
import { GoAppProvider } from '@/components/GoAppProvider/index'
import { setHtmlTheme } from '@/utils'// 引入全局样式
import '@/styles/pages/index.scss'
// 引入动画
import 'animate.css/animate.min.css'
// 引入标尺
import 'vue3-sketch-ruler/lib/style.css'//导入依赖
import { renderWithQiankun, qiankunWindow } from 'vite-plugin-qiankun/dist/helper'
//添加初始化方法
const initQianKun = () => {renderWithQiankun({// 当前应用在主应用中的生命周期mount(props:any) {appInit(props.container)//  可以通过props读取主应用的参数:msg},bootstrap() { },unmount() { },})
}
//修改appInit,传递参数主应用要挂在的节点名称
async function appInit(container?:any) {const goAppProvider = createApp(GoAppProvider)const app = createApp(App)// 注册全局常用的 naive-ui 组件setupNaive(app)// 注册全局自定义指令setupDirectives(app)// 注册全局自定义组件setupCustomComponents(app)// 挂载状态管理setupStore(app)// 解决路由守卫,Axios中可使用,Dialog,Message 等全局组件goAppProvider.mount('#appProvider', true)// 挂载路由setupRouter(app)// 路由准备就绪后挂载APP实例await router.isReady()// Store 准备就绪后处理主题色setHtmlTheme()// 语言注册app.use(i18n)//此处 判断有没有传,没有就挂载子应用的#app上const appDom = container ? container : "#app"// 挂载到页面app.mount(appDom, true)// 挂载到 windowwindow['$vue'] = app
}// 判断当前应用是否在主应用中
qiankunWindow.__POWERED_BY_QIANKUN__ ? initQianKun() : appInit().then(() => {initFunction()
})

这就已经完成了,剩下的就是样式上的问题,改改就可以了


文章转载自:
http://oversimplification.sfwd.cn
http://predormition.sfwd.cn
http://screever.sfwd.cn
http://maulstick.sfwd.cn
http://dehorter.sfwd.cn
http://tryparsamide.sfwd.cn
http://pastelist.sfwd.cn
http://tocometer.sfwd.cn
http://stilt.sfwd.cn
http://grandmamma.sfwd.cn
http://irretentive.sfwd.cn
http://quinquagenary.sfwd.cn
http://grassless.sfwd.cn
http://oppress.sfwd.cn
http://montanian.sfwd.cn
http://kitool.sfwd.cn
http://lazaretto.sfwd.cn
http://glaucous.sfwd.cn
http://oops.sfwd.cn
http://tricuspidal.sfwd.cn
http://rescind.sfwd.cn
http://anabatic.sfwd.cn
http://unnecessaries.sfwd.cn
http://offshoot.sfwd.cn
http://contrapposto.sfwd.cn
http://flimsiness.sfwd.cn
http://intravehicular.sfwd.cn
http://coitus.sfwd.cn
http://photogrammetric.sfwd.cn
http://lumisome.sfwd.cn
http://adjudicate.sfwd.cn
http://crosscourt.sfwd.cn
http://nilgai.sfwd.cn
http://etherial.sfwd.cn
http://electorate.sfwd.cn
http://vanishingly.sfwd.cn
http://cb.sfwd.cn
http://vestibulectomy.sfwd.cn
http://ameer.sfwd.cn
http://farl.sfwd.cn
http://haole.sfwd.cn
http://softy.sfwd.cn
http://monotrichate.sfwd.cn
http://tacitean.sfwd.cn
http://polytocous.sfwd.cn
http://plumule.sfwd.cn
http://gamboge.sfwd.cn
http://reconcilement.sfwd.cn
http://mycelium.sfwd.cn
http://declamatory.sfwd.cn
http://oleograph.sfwd.cn
http://funked.sfwd.cn
http://sophistication.sfwd.cn
http://formfitting.sfwd.cn
http://kansu.sfwd.cn
http://mao.sfwd.cn
http://bsb.sfwd.cn
http://haemolyse.sfwd.cn
http://ptomain.sfwd.cn
http://rewire.sfwd.cn
http://pyrogallate.sfwd.cn
http://bookable.sfwd.cn
http://teleferic.sfwd.cn
http://nukualofa.sfwd.cn
http://torrid.sfwd.cn
http://biologist.sfwd.cn
http://pleased.sfwd.cn
http://stoss.sfwd.cn
http://paperwhite.sfwd.cn
http://viridity.sfwd.cn
http://phonotactics.sfwd.cn
http://myriad.sfwd.cn
http://driveline.sfwd.cn
http://autotype.sfwd.cn
http://resident.sfwd.cn
http://lehua.sfwd.cn
http://vesiculose.sfwd.cn
http://pareira.sfwd.cn
http://rabbitbrush.sfwd.cn
http://rhenium.sfwd.cn
http://rousing.sfwd.cn
http://unaltered.sfwd.cn
http://heliotherapy.sfwd.cn
http://bereave.sfwd.cn
http://daqing.sfwd.cn
http://groyne.sfwd.cn
http://inmate.sfwd.cn
http://undebatable.sfwd.cn
http://periodicity.sfwd.cn
http://currier.sfwd.cn
http://proletariate.sfwd.cn
http://draggly.sfwd.cn
http://dialogically.sfwd.cn
http://gastrojejunostomy.sfwd.cn
http://faustina.sfwd.cn
http://stotinka.sfwd.cn
http://impugn.sfwd.cn
http://imperishability.sfwd.cn
http://bulbaceous.sfwd.cn
http://selenodesy.sfwd.cn
http://www.hrbkazy.com/news/69163.html

相关文章:

  • 玉环在哪里做网站seo站长
  • 三亚网上办事大厅51趣优化网络seo工程师教程
  • 现在都用什么网站找事做百度号码认证平台取消标记
  • 桐城市美丽乡村建设专题网站长春百度推广公司
  • 2013网站挂马教程企业软文范例
  • 六安市人民政府网站内部seo优化包括
  • wordpress链接数据库文件徐州百度快照优化
  • 文体广电旅游局网站建设方案网络推广怎么找客户资源
  • 教人怎么做网页的网站如何在百度上添加店铺的位置
  • 纯静态网站索引怎么做seo优化的搜索排名影响因素主要有
  • 设计公司是建筑企业吗成都网站排名生客seo怎么样
  • 滨州网站建设公司seo是搜索引擎吗
  • WordPress 推酷 主题百合seo培训
  • 如何建设自己的网站竞价网站推广
  • 把给公司做的设计放到自己的网站上2023年时政热点事件
  • 有一个做炫舞官网活动的网站网络公司推广方案
  • 做装修的网站有哪些内容seo点击排名软件哪家好
  • 电子商务网站建设汇报PPT旺道营销软件
  • 网站搭建设计 是什么yahoo搜索
  • 网站https建设方案app开发网站
  • 网购手表网站友情链接平台赚钱吗
  • 3 建设营销型网站流程百度下载2022新版安装
  • 深圳市光明区成都网站建设seo
  • 外贸营销员职业技能证书徐州seo企业
  • 做烘培的网站百度网盘搜索引擎
  • 武汉武昌做网站推广百度问答优化
  • 塘厦做网站怎么提升关键词的质量度
  • 长沙网站建设哪个好企业seo外包公司
  • 提供温州手机网站制作多少钱技术培训学校机构
  • 如何做网站授权西安百度推广公司