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

网站里会自动换图怎么做沈阳医疗网站制作

网站里会自动换图怎么做,沈阳医疗网站制作,企查查官网查询入口,定制型营销网站建设介绍 MicroApp是由京东前端团队推出的一款微前端框架#xff0c;它从组件化的思维#xff0c;基于类WebComponent进行微前端的渲染#xff0c;旨在降低上手难度、提升工作效率。MicroApp无关技术栈#xff0c;也不和业务绑定#xff0c;可以用于任何前端框架。 源码地址…介绍 MicroApp是由京东前端团队推出的一款微前端框架它从组件化的思维基于类WebComponent进行微前端的渲染旨在降低上手难度、提升工作效率。MicroApp无关技术栈也不和业务绑定可以用于任何前端框架。 源码地址 https://github.com/micro-zoe/micro-app官网地址 https://micro-zoe.github.io/micro-app 微前端是一种页面整合方案它的核心在于将一个庞大的前端应用拆分成多个独立灵活的小型应用每个应用都可以独立开发、独立运行、独立部署再将这些小型应用融合为一个完整的应用或者将原本运行已久、没有关联的几个应用融合为一个应用。微前端既可以将多个项目融合为一又可以减少项目之间的耦合提升项目扩展性相比一整块的前端仓库微前端架构下的前端仓库倾向于更小更灵活。 升级亮点 距离MicroApp开源已经有一年多时间在这段时间里我们收到了很多问题反馈包括沙箱的性能、vite的兼容、路由冲突等等为了解决这些问题我们将很多核心功能进行升级和重构经过不断的打磨和验证最终推出MicroApp1.0正式版。 正式版的升级主要在以下几个方面 更简洁的接入方式 沙箱的性能 虚拟路由系统 样式隔离 兼容vite 开发工具 一行代码嵌入 MicroApp借鉴了WebComponent的思想通过CustomElement结合自定义的ShadowDom将微前端封装成一个类WebComponent组件实现微前端的组件化渲染。在此基础上通过实现JS隔离、样式隔离、路由隔离降低子应用的接入成本子应用只需设置允许跨域请求不需要改动任何代码即可接入微前端使用方式和iframe几乎一致但却没有iframe存在的问题。 接入方式如下 JS沙箱的困境 在MicroApp开源后我们收到社区的一些反馈其中一条关于性能的问题引起我们的重视。这不是MicroApp才存在的问题而是微前端长久以来的难题在社区有大量关于沙箱性能问题的讨论却始终没有完美的解决方案。 MicroApp采用的是和qiankun一样的proxywith的沙箱方案这也是目前js沙箱的主流方案 。with沙箱的功能非常完善但是性能损耗却非常明显在社区中也不乏对with沙箱性能问题的讨论但一直没有特别完美的解决方案这是由于with改变了js的作用域链从而产生大量的重复请求。问题的根源是with但又不全是with的问题准确的说是with和proxy两者叠加造成的with和proxy本质上的性能都不高需要一种方案避免对这两个方法的频繁读取操作MicroApp采用的解决方案是变量前置和异步防抖。 • 变量前置是指使用Object.defineProperty定义全局变量通过get和set设置响应数据一是为了避免在proxy的get中进行多余的操作二是defineProperty的性能比proxy更优秀 。 • 异步防抖是指在子应用运行时对promise进行标记确保在上一个promise执行完成之后才会进入下一个避免并行触发防止promise被频繁触发会造成性能损失。 在此基础上MicroApp沙箱还提供了快照、缓存、预加载等功能在保证功能不变的前提下彻底解决沙箱的性能问题升级后的沙箱运行效率媲美原生JS。 虚拟路由系统 微前端是将多个不同的web应用融合在一起渲染但浏览器只有一个路由系统这很容易造成应用之间的路由冲突最常见的就是vue3的路由冲突问题。 上面是vue-router作者对于在微前端环境下的冲突问题的回答他认为vue-router已经覆盖足够多场景微前端的问题应该由微前端解决。 在我们刚开源时并没有对路由进行隔离用户对于MicroApp的问题几乎一半都和路由相关因为一个路由系统同时满足多个应用的渲染容易导致冲突也非常反直觉和难以理解于是我们推出了虚拟路由系统。 概念图 虚拟路由系统与浏览器的路由行为一致它通过自定义location和history等核心路由API重写了popState和hashChange事件拦截路由导航和事件并提供了一系列自定义API模拟了在浏览器环境下的Web应用程序的渲染、跳转和返回等路由行为。子应用程序在这个虚拟路由系统中运行与基座应用程序的路由相互隔离从而避免相互影响并增强了子应用程序与基座应用程序之间的交互能力。通过虚拟路由系统基座应用程序可以方便地获取子应用程序的路由信息并控制子应用程序的跳转子应用程序的路由信息会作为参数同步到浏览器地址上。此外虚拟路由系统还提供了许多功能帮助开发人员提高工作效率。 样式隔离方案升级 MicroApp最初是基于style元素的CSSStyleSheet实现的样式隔离即将CSS字符串插入style元素生成CSSStyleSheet遍历每个CSS规则添加前缀实现样式隔离。 这种一种取巧的方式利用浏览器自身的能力格式化CSS并在此基础上进行修改省去很多工作量。但问题也出现在这里不同浏览器对于相同的CSS生成的CSSStyleSheet可能会不同这就导致我们在处理CSSStyleSheet会遇到不可以预知的问题导致CSS表现不一致。 于是MicroApp换了一种方式来实现样式隔离我们使用正则将CSS字符串切割成最小单元每个单元包含一段CSS信息将所有的信息整理生成CSSTree遍历CSSTree的每个规则添加前缀实现样式隔离。 新的方案不但抹平了不同平台间的差异在性能上相较于旧版普遍提升30%以上并且拥有更加灵活的配置 /* 对指定的选择器禁用样式隔离 * /*! scopecss-disable .test1, .test2 */ .test1 {color: red; } .test2 {color: yellow; } .test3 {/* 在某一行中禁用样式隔离 *//*! scopecss-disable-next-line */background: url(/test.png); }vite的兼容 在之前的版本中MicroApp也支持vite的接入但必须关闭沙箱因为vite打包出来的是esm类型的js文件而esm无法运行在with环境中但这样容易导致基座和子应用之间的冲突显然是需要进一步优化的。 为此我们为vite更准确的说是为esm类型的项目开发了一套iframe沙箱方案将esm类型的js文件放入iframe中运行并通过重写子应用底层原型链的方式实现对js和元素的拦截和处理。 iframe沙箱和with沙箱的实现方式不同功能也略有不同with沙箱拥有更加灵活的操作而iframe沙箱拥有更加严格的隔离环境两者各有优劣。用户可以在两种沙箱之间灵活切换以满足更多特殊场景的覆盖和兼容。 Micro-App-DevTools Micro-App-DevTools 是基于 MicroApp 推出的一款Chrome浏览器插件目的是为了在开发和使用 MicroApp 过程中提高效率。通过此插件可以有效的解决调试困难、模拟数据通信、查看视窗范围、设置路由、获取环境变量等诉求进而更好地帮助用户去了解和使用 MicroApp。 方案详解 Micro-App-DevTools通过模拟子应用开发环境获取父应用数据来可视化查看通讯数据提高开发调试效率。对于路由将会显示所有应用的路由包含层层嵌套应用以及一个父应用多个子应用的路由使不同团队应用也能快速定位自己问题方便协作。还提供了全局变量和高亮视窗功能实现快速定位范围提高排查效率的功能并集结了图标、右键、控制台的快捷进入方式使用户快速上手零成本使用。 总结 MicroApp 1.0已经发布我们将积极回应开发者的问题和反馈并持续改进以帮助更多开发者提高效率和改善开发体验。欢迎大家使用MicroApp并参与共建也希望在GitHub上给我们点个Star来支持我们~ MicroApp Github地址 https://github.com/micro-zoe/micro-app Micro-App-DevTools Github地址 https://github.com/micro-zoe/micro-app-chrome-plugin MicroApp官网地址 https://micro-zoe.github.io/micro-app 作者京东零售 马国华 来源京东云开发者社区 转载请注明来源
http://www.pierceye.com/news/858242/

相关文章:

  • 自己做网站下载怎么网站基础知识域名5个点
  • 网站搭建合作协议wordpress注册页面插件
  • 网络公司最好的是哪个兰州网络推广优化怎样
  • 网站文章采集工具新网站怎么做流畅
  • discuz 手机网站模板山东省住房建设厅网站首页
  • 网站建设违约责任条款枣庄专业做网站
  • python做爬虫和做网站做两个一摸一样的网站
  • 网站做微信登录asp.net做网站头部和尾部_都用什么来实现
  • 南充哪里做网站太原关键词优化公司
  • 哪个网站做的ppt模板好投放广告网站
  • 公司网站中新闻中心怎样做优化百度浏览器电脑版
  • 厦门网站建设 九来外国做视频在线观看网站
  • 用.net做购物网站山东建筑公司实力排名
  • 做百度推广网站找谁好宁夏省建筑信息平台
  • phpcmsv9手机网站源码网站开发ide php
  • 学校网站建设成功案例微信公众号网站导航怎么做
  • 重庆汽车网站建设建立大安全大应急框架
  • 重庆模板建站定制网站做企业网站到哪里找
  • asp技术做网站网站建设推广是什么工作室
  • 运营公众号还是做网站室内装修设计软件哪个好用
  • 卖营销软件的网站如何利用站群做网站
  • 网站空间价格怎么算网站制作与发布
  • 做网站的动态图片廊坊做网站哪家好
  • 建设企业网站报价怎么做网站logo
  • 企业类网站谷歌seo招聘
  • asp.net网站安装顺序idc 公司网站模板
  • 新手学做网站优化2022app分类排行
  • 微信微网站制作公司2008年做的网站
  • 网站建设柒首先金手指1男孩做网站
  • 葫芦岛市建设局网站网页制作与网站发布