微前端架构核心要点对比

1. 样式隔离

常见的隔离方式有以下几种,还是根据自身业务来确定:

1.1. shadowDOM

目前相对来说使用最多的样式隔离机制。

但shadowDOM并不是银弹,由于子应用的样式作用域仅在 shadow 元素下,那么一旦子应用中出现运行时“翻墙”跑到外面构建 DOM 的场景,必定会导致构建出来的 DOM 无法应用于应用的样式的情况。比如:子应用里调用了 antd modal 组件,由于 modal 是动态挂载到 document.body 的,而 antd 的样式只在 shadow 这个作用域下生效,结果就是弹出框无法应用到 antd 的样式。解决的办法是把 antd 的样式上浮一层,丢到主应用的DOM上。

1.2. BEM、CSS Modules

1.2.1. BEM:Block Element Module命名约束

  • B:Block 一个独立的模块,一个本身就有意义的独立实体 比如:header、menu、container.

  • E:Element 元素,块的一部分但是自身没有独立的含义 比如:header title、container input.

  • M:Modifier 修饰符,块或者元素的一些状态或者属性标志 比如:small、checked.

模块:.Block
模块多单词:.Header-Block
模块_状态:.Block_Modifier
模块__子元素:.Block__Element
模块__子元素_状态:.Block__Element_Modifier
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

艾光远

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值