-
Notifications
You must be signed in to change notification settings - Fork 0
Open
Description
1. 条件语句中字符串含多个className可能会导致问题
<div className={`${tabIndex == index ? 'global-class active ' : ' '}item`} />会被编译为
<div className={clsx(`${tabIndex == index ? ['global-class', styles.active] : ' '}item`)} />编译结果格式错误
2. 使用+拼接字符串作为className的情况
如:
<div className={(tabIndex == index ? 'global-class active ' : ' ') + 'item'} />不保证结果100%正确,实在是太难猜字符串拼接以后的情况了😂
3. 本地覆盖全局的class被转换导致从全局类继承过来的样式丢失
当前处理at-开头的,遇到这种class,会在转换的时候自动套一层:global(),其它的就会被转换。比如在全局样式app.scss种存在一个class: .text--red{color: red},当前页面样式文件中也存在一个selecor: .text--red{font-size: 12px},在之情它两样是会合并,元素既是红色字号也是12像素,但是现在会只保留字号12px
目前想到的一个可行方案是读取app.scss文件中的selecor,放到全局selctor列表中,在遍历页面/组件样式时,只要发现selector在全局selctor列表中,就也给它套一个:global()
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels