首页 > 其他分享 >我的前端项目

我的前端项目

时间:2024-08-01 13:29:14浏览次数:14  
标签:遍历 隔离 项目 -- 前端 应用 节点 加载

qiankun

微前端

--是一种多个团队通过独立发布功能的方式来共同构建现代化web应用的技术手段与方法策略。
该架构的核心价值
--技术栈无关。主框架不限制应用技术栈
--独立开发与部署。微应用仓库独立,前后端可独立开发,部署完成后主框架自动更新
--增量升级。复杂场景下对当前系统进行技术栈升级重构,微前端是一种实施渐进式重构的手段。
--独立运行。微应用彼此状态隔离,运行状态不共享。

运行原理

监听路有变化

匹配子应用

加载子应用

渲染子应用

qiankun与single-spa的不同之处

HTML Entry+Sandbox

qiankun实现html entry,single-spa是js entry

通过import html-entry,可以像iframe一样加载子应用,只需知道html的url就能加载到主应用中。

WHY NOT IFRAME?

iframe最大特性是提供浏览器原生的硬隔离方案,样式隔离、js隔离不在话下。但最大问题也是无法突破隔离,导致应用级上下文无法共享,开发与产品体验问题较多。
--url不同步。浏览器刷新iframe url状态丢失,前进后退按钮无效

--UI不同步,DOM结构不共享

--全局上下文完全隔离,内存变量不共享

--速度缓慢。每次进入子应用都是一次浏览器上下文重建,资源重新加载的过程

遍历

深度优先DFS

递归实现

依次遍历当前节点,左节点,右节点即可,对于左右节点来说,依次遍历它们的左右节点即可,依此不断递归下去,直到叶节点(递归终止条件)

非递归实现---用堆栈

  1. 对于每个节点来说,先遍历当前节点,然后把右节点压栈,再压左节点(这样弹栈的时候会先拿到左节点遍历,符合深度优先遍历要求)
  2. 弹栈,拿到栈顶的节点,如果节点不为空,重复步骤 1, 如果为空,结束遍历。

广度优先BFS

用队列

从图的一个未遍历的节点出发,先遍历这个节点的相邻节点,再依遍次历每个相邻节点的相邻节点。

vue强制渲染

刷新页面、v-if(组件重新渲染)、$forceUpdate、key-changing(使用key标记组件身份,key改变时就是释放原始组件,重新加载新组建)

标签:遍历,隔离,项目,--,前端,应用,节点,加载
From: https://www.cnblogs.com/lepanyou/p/18336472

相关文章

  • Python中FastAPI项目使用 Annotated的参数设计
    在FastAPI中,你可以使用PEP593中的Annotated类型来添加元数据到类型提示中。这个功能非常有用,因为它允许你在类型提示中添加更多的上下文信息,例如描述、默认值或其他自定义元数据。FastAPI支持Annotated类型,这使得你可以为路径操作函数的参数提供额外的元数据,例如依赖项、查询参......
  • 一个wpf项目的搭建prism框架mvvm
    一个wpf项目的搭建prism框架mvvm简单prism项目:1.新建一个wpf的项目2.引入包:在nuget中,prism.DryIoc3.把空项目应用转化成Prism,把App基类Application改为PrismApplication,因为这个基类是分布类,其中app.xaml.cs基类改为PrismApplication,和xaml的标签,引入命名空间后改为<prism......
  • 2024短视频掘金项目,AI制作治愈系风景,奇幻天空特效,操作简单,日入3位数
    今日的项目:许多人可能已经在手机上欣赏过那些由AI创造的虚拟场景:小狗在雪地中欢快奔跑,云朵在街头飘荡,或是雨雪中的温馨画面。这些并非真实的摄影作品,而是人工智能的杰作。目前,不少账号仅通过发布这类视频内容,无需真人出镜,便吸引了数万甚至数十万的粉丝。比如在抖音和微信......
  • GLSL教程 第十三章:综合项目:创建一个完整的渲染场景(一更)
     目录13.1项目规划和设计13.1.1项目目标13.1.2设计要求13.2实现场景中的光照、材质和纹理13.2.1创建基础场景13.2.2应用材质和纹理13.3集成高级渲染效果和后期处理13.3.1阴影映射(ShadowMapping)13.3.2环境光遮蔽(AO)13.3.3简单的景深效果(DepthofField)13......
  • Maven手动添加jar项目导本地、通过pom.xml引入依赖、打包后依然生效
    1、到jar包目录、cmd以管理员身份运行、执行如下命令mvninstall:install-file-Dfile=sqljdbc4.jar-Dpackaging=jar-DgroupId=com.microsoft.sqlserver-DartifactId=sqljdbc4-Dversion=4.02、pom.xml进行引入`<dependency> <groupId>com.microsoft.sqlserver</groupI......
  • CMAKE 《window构建项目》
    安装参考链接https://subingwen.cn/https://subingwen.cn/cmake/CMake-primer/cmakehttps://cmake.org/download/下载根据需求安装合适的版本mingw64https://www.mingw-w64.org/下载根据需求安装合适的版本https://sourceforge.net/projects/mingw-w64/files/mi......
  • 前端如何设置表格边框样式和单元格间距?
    前端如何设置表格边框样式和单元格间距?引言表格的基本概念基本结构示例一:基本表格样式CSS说明示例二:交替行颜色CSS说明示例三:固定表头CSS说明示例四:设置单元格间距HTMLCSS说明示例五:响应式表格CSSHTML说明实际工作中的使用技巧技巧一:优化单元格内的内容CSS技巧二:使......
  • 1、消息队列框架:ActiveMQ - 开源项目研究文章
    ActiveMQ是Apache软件基金会下的一个开源消息队列服务,遵循JMS1.1规范(JavaMessageService),是一种面向消息中间件(MOM)的实现。它提供高可用性、出色的性能、可扩展性、稳定性和安全性的消息传递服务。ActiveMQ的架构ActiveMQ的架构包括生产者(Producer)、消费者......
  • 最新野兽领主游戏打金搬砖挂机项目
      摘要本文详细介绍了一种基于野兽领主游戏的自动化资源采集项目,该项目通过脚本实现游戏内资源的自动采集,并通过多个渠道进行销售,实现盈利。1.项目原理野兽领主游戏自动化项目利用脚本技术在游戏内自动采集关键资源,如木头、石头、水滴、水果和金币等,这些资源是游戏内经......
  • 最新野兽领主游戏打金搬砖挂机项目
      摘要本文详细介绍了一种基于野兽领主游戏的自动化资源采集项目,该项目通过脚本实现游戏内资源的自动采集,并通过多个渠道进行销售,实现盈利。1.项目原理野兽领主游戏自动化项目利用脚本技术在游戏内自动采集关键资源,如木头、石头、水滴、水果和金币等,这些资源是游戏内经......