Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "shineout",
"version": "2.0.32-beta.6",
"version": "2.0.32-beta.7",
"description": "Shein 前端组件库",
"main": "./lib/index.js",
"module": "./es/index.js",
Expand Down
1 change: 1 addition & 0 deletions site/pages/documentation/changelog/2.x.x.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,7 @@
- 修复 `Table` 使用 `treeExpandKeys` 展开树形行时,若数据中包含 DOM 引用等不可序列化字段会导致页面崩溃的问题
- 修复 `Grid` 组件动态生成的样式在微前端场景下被错误劫持导致样式失效的问题
- 修复 `Dropdown` 嵌套使用 `absolute` 时子级菜单项点击无法触发 onClick 的问题(Regression: since 2.0.29)
- 修复弹出类组件开启 `absolute` 后在非 `Modal` 场景下被自动注入 `z-index`,导致用户 CSS 层级覆盖失效的问题(Regression: since 2.0.23)

### 2.0.31
- 新增 RTL 模式下 `Modal`、`Popover`、`Tooltip` 组件的位置自动镜像转换功能
Expand Down
3 changes: 2 additions & 1 deletion src/Modal/Panel.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -224,7 +224,8 @@ export default class Panel extends PureComponent<ModalPanelProps> {
const showClose = typeof hideClose === 'boolean' ? !hideClose : maskCloseAble || maskCloseAble === null
const maskStyle = { paddingBottom: fullScreen ? 0 : top }
return (
<ZProvider value>
<ZProvider value={{}}>

<Provider value={{ element: undefined }}>
<div
{...events}
Expand Down
10 changes: 8 additions & 2 deletions src/Modal/context.tsx
Original file line number Diff line number Diff line change
@@ -1,7 +1,13 @@
import React from 'react'
import createReactContext from '../context'

const context = createReactContext({})
// 默认值为 null,表示"不在 Modal 内部"。
// 修复:原来默认值为 {}(truthy),导致所有开启 absolute 的弹出类组件(Dropdown/Select 等)
// 无论是否在 Modal 内,都会被自动注入 zIndex: 1051(inline style),
// 使用户通过 CSS 覆盖 z-index 的方式完全失效(Breaking Change since 2.0.23)。
// 现改为 null,只有在 Modal Provider 内部时(value != null)才注入 zIndex,
// 与 v1 行为保持一致。
const context = createReactContext<object | null>(null)

// eslint-disable-next-line
export const Provider = context.Provider
Expand All @@ -11,7 +17,7 @@ const consumer = <Props extends {}>(Origin: React.ComponentType<Props>) => (
) => (
<context.Consumer>
{value => {
const mp = Object.assign({}, props, value && props.absolute && props.zIndex === undefined && { zIndex: 1051 })
const mp = Object.assign({}, props, value != null && props.absolute && props.zIndex === undefined && { zIndex: 1051 })
return <Origin {...mp} />
}}
</context.Consumer>
Expand Down
2 changes: 1 addition & 1 deletion src/index.js
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

import * as utils from './utils'

export default { utils, version: '2.0.32-beta.6' }
export default { utils, version: '2.0.32-beta.7' }
export { utils }
export { setLocale } from './locale'
export { color, style } from './utils/expose'
Expand Down
Loading