diff --git a/CHANGELOG.md b/CHANGELOG.md
index cec68802..f9319978 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,5 +1,17 @@
# Changelog
+## [1.4.11] - 2026-02-03
+- popup ali fix 滚动穿透问题
+
+## [1.4.10] - 2026-02-03
+- popup rn fix 动画时调用 initContentRect,导致动画卡顿
+
+## [1.4.9] - 2026-01-29
+- toast 增加动画配置,可关闭 toast 显、隐动画
+
+## [1.4.8] - 2026-01-20
+- popup rn 增加 zIndex 配置
+
## [1.4.7] - 2026-01-13
- icon、button 组件 css 编译问题修复(React Native)
@@ -25,6 +37,9 @@
## [1.4.0] - 2025-11-06
- RN 组件适配鸿蒙
+## [1.3.17] - 2026-01-15
+- popup ali fix 滚动穿透问题
+
## [1.3.16] - 2025-12-05
- button 支持阴影(React Native)
- dialog 对齐小程序、web、RN 关闭按钮样式
diff --git a/docs/config/sidebar.js b/docs/config/sidebar.js
index b1234fc8..fdb435b7 100644
--- a/docs/config/sidebar.js
+++ b/docs/config/sidebar.js
@@ -128,6 +128,10 @@ module.exports = [
{
title: 'Switch 滑动开关',
path: '/components/base/switch'
+ },
+ {
+ title: 'Slider 滑动选择器',
+ path: '/components/base/slider'
}
]
},
diff --git a/docs/guide/changelog.md b/docs/guide/changelog.md
index cec68802..f9319978 100644
--- a/docs/guide/changelog.md
+++ b/docs/guide/changelog.md
@@ -1,5 +1,17 @@
# Changelog
+## [1.4.11] - 2026-02-03
+- popup ali fix 滚动穿透问题
+
+## [1.4.10] - 2026-02-03
+- popup rn fix 动画时调用 initContentRect,导致动画卡顿
+
+## [1.4.9] - 2026-01-29
+- toast 增加动画配置,可关闭 toast 显、隐动画
+
+## [1.4.8] - 2026-01-20
+- popup rn 增加 zIndex 配置
+
## [1.4.7] - 2026-01-13
- icon、button 组件 css 编译问题修复(React Native)
@@ -25,6 +37,9 @@
## [1.4.0] - 2025-11-06
- RN 组件适配鸿蒙
+## [1.3.17] - 2026-01-15
+- popup ali fix 滚动穿透问题
+
## [1.3.16] - 2025-12-05
- button 支持阴影(React Native)
- dialog 对齐小程序、web、RN 关闭按钮样式
diff --git a/example/app.mpx b/example/app.mpx
index ebe8c4d7..db187b2f 100644
--- a/example/app.mpx
+++ b/example/app.mpx
@@ -52,7 +52,8 @@
"./pages/loading/index",
"./pages/input/index",
"./pages/action-sheet/index",
- "./pages/tab-bar/index"
+ "./pages/tab-bar/index",
+ "./pages/slider/index"
]
if (__mpx_mode__ === 'ios' || __mpx_mode__ === 'android') {
pages = [
diff --git a/example/common/config.ts b/example/common/config.ts
index 8d827562..3ff8b142 100644
--- a/example/common/config.ts
+++ b/example/common/config.ts
@@ -63,7 +63,8 @@ export default {
'date-picker',
'time-picker',
'rate',
- 'switch'
+ 'switch',
+ 'slider'
]
},
{
diff --git a/example/pages/slider/README.md b/example/pages/slider/README.md
new file mode 100644
index 00000000..f7e4801d
--- /dev/null
+++ b/example/pages/slider/README.md
@@ -0,0 +1,61 @@
+## Cube-Slider
+
+
+
+## 介绍 已适配RN
+
+滑动选择器(基于touch事件拖动滑块儿,请在移动端环境下体验)。
+
+**注意:RN模式下如果组件使用在[scroll-view](https://www.mpxjs.cn/guide/rn/component.html#scroll-view)中,那么change事件可能因为上下滚动不会触发**
+- scroll-view 组件在滚动过程中,不会触发其自身或子组件的 touchend 事件响应,这是 RN 底层实现导致的问题,手势系统识别当前是 scroll-view 的滚动,就会取消掉 touchend 事件的响应。
+- 安卓上如果触发了 scroll-view 组件默认的下拉刷新,binddragend可能不触发,只会触发 binddragstart
+
+
+
+### 示例
+
+
+
+### 基本用法
+
+
+
+
+
+
+
+### 设置step
+
+
+
+
+
+
+
+### 显示当前value
+
+
+
+
+
+
+
+### 设置最小值/最大值
+
+
+
+
+
+
+
+### 自定义滑块儿
+
+设置
+```vue
+custom-content="{{true}}"
+```
+并添加自定义插槽。
+
+
+
+
diff --git a/example/pages/slider/index-ios.mpx b/example/pages/slider/index-ios.mpx
new file mode 100644
index 00000000..c253ebfd
--- /dev/null
+++ b/example/pages/slider/index-ios.mpx
@@ -0,0 +1,58 @@
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/example/pages/slider/index.mpx b/example/pages/slider/index.mpx
new file mode 100644
index 00000000..5fa0d3d7
--- /dev/null
+++ b/example/pages/slider/index.mpx
@@ -0,0 +1,59 @@
+
+
+
+
+
+ 基本用法
+
+
+
+
+ 设置step
+
+
+
+
+ 显示当前value
+
+
+
+
+ 设置最小值/最大值
+
+
+
+
+ 自定义滑块儿
+
+
+
+
+
+
+
+
+
+
+
diff --git a/example/pages/slider/slider-default.mpx b/example/pages/slider/slider-default.mpx
new file mode 100644
index 00000000..b956323e
--- /dev/null
+++ b/example/pages/slider/slider-default.mpx
@@ -0,0 +1,36 @@
+
+
+
+
+
+
+
+
+
diff --git a/example/pages/slider/slider-min-max.mpx b/example/pages/slider/slider-min-max.mpx
new file mode 100644
index 00000000..f592aed7
--- /dev/null
+++ b/example/pages/slider/slider-min-max.mpx
@@ -0,0 +1,41 @@
+
+
+
+
+
+
+
+
+
+
+
diff --git a/example/pages/slider/slider-slot.mpx b/example/pages/slider/slider-slot.mpx
new file mode 100644
index 00000000..6e732115
--- /dev/null
+++ b/example/pages/slider/slider-slot.mpx
@@ -0,0 +1,49 @@
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/example/pages/slider/slider-step.mpx b/example/pages/slider/slider-step.mpx
new file mode 100644
index 00000000..eb9edcae
--- /dev/null
+++ b/example/pages/slider/slider-step.mpx
@@ -0,0 +1,37 @@
+
+
+
+
+
+
+
+
+
diff --git a/example/pages/slider/slider-value.mpx b/example/pages/slider/slider-value.mpx
new file mode 100644
index 00000000..555a5e9d
--- /dev/null
+++ b/example/pages/slider/slider-value.mpx
@@ -0,0 +1,37 @@
+
+
+
+
+
+
+
+
+
diff --git a/package.json b/package.json
index 35ac256c..ea94c79c 100644
--- a/package.json
+++ b/package.json
@@ -1,6 +1,6 @@
{
"name": "mpx-cube-ui",
- "version": "1.4.8",
+ "version": "1.4.11",
"private": true,
"description": "mpx components library",
"author": "xiaolei ",
diff --git a/packages/extract-theme-var/package.json b/packages/extract-theme-var/package.json
index d4e25c56..6d9aee58 100644
--- a/packages/extract-theme-var/package.json
+++ b/packages/extract-theme-var/package.json
@@ -1,6 +1,6 @@
{
"name": "@mpxjs/extract-theme-var",
- "version": "1.4.8",
+ "version": "1.4.11",
"description": "mpx-cube-ui theme variable extractor",
"publishConfig": {
"registry": "https://registry.npmjs.org",
diff --git a/packages/mpx-cube-ui/__tests__/components/action-sheet/__snapshots__/action-sheet.spec.js.snap b/packages/mpx-cube-ui/__tests__/components/action-sheet/__snapshots__/action-sheet.spec.js.snap
index c45dbb9c..6b4b7580 100644
--- a/packages/mpx-cube-ui/__tests__/components/action-sheet/__snapshots__/action-sheet.spec.js.snap
+++ b/packages/mpx-cube-ui/__tests__/components/action-sheet/__snapshots__/action-sheet.spec.js.snap
@@ -1,5 +1,5 @@
// Jest Snapshot v1, https://goo.gl/fbAQLP
-exports[`component action-sheet unit test correct props check matchSnapshot 1`] = `""`;
+exports[`component action-sheet unit test correct props check matchSnapshot 1`] = `""`;
-exports[`component action-sheet unit test event trigger check matchSnapshot 1`] = `""`;
+exports[`component action-sheet unit test event trigger check matchSnapshot 1`] = `""`;
diff --git a/packages/mpx-cube-ui/__tests__/components/cascade-picker-modal/__snapshots__/cascade-picker-modal.spec.js.snap b/packages/mpx-cube-ui/__tests__/components/cascade-picker-modal/__snapshots__/cascade-picker-modal.spec.js.snap
index 93f8d2f2..cba13196 100644
--- a/packages/mpx-cube-ui/__tests__/components/cascade-picker-modal/__snapshots__/cascade-picker-modal.spec.js.snap
+++ b/packages/mpx-cube-ui/__tests__/components/cascade-picker-modal/__snapshots__/cascade-picker-modal.spec.js.snap
@@ -1,9 +1,9 @@
// Jest Snapshot v1, https://goo.gl/fbAQLP
-exports[`component cascade-picker unit test base props check matchSnapshot 1`] = `""`;
+exports[`component cascade-picker unit test base props check matchSnapshot 1`] = `""`;
-exports[`component cascade-picker unit test base props check matchSnapshot 2`] = `""`;
+exports[`component cascade-picker unit test base props check matchSnapshot 2`] = `""`;
-exports[`component cascade-picker unit test base set props check matchSnapshot 1`] = `""`;
+exports[`component cascade-picker unit test base set props check matchSnapshot 1`] = `""`;
-exports[`component cascade-picker unit test slot check matchSnapshot 1`] = `""`;
+exports[`component cascade-picker unit test slot check matchSnapshot 1`] = `""`;
diff --git a/packages/mpx-cube-ui/__tests__/components/cascade-picker-popup/__snapshots__/cascade-picker-popup.spec.js.snap b/packages/mpx-cube-ui/__tests__/components/cascade-picker-popup/__snapshots__/cascade-picker-popup.spec.js.snap
index b6b99137..ae28eccb 100644
--- a/packages/mpx-cube-ui/__tests__/components/cascade-picker-popup/__snapshots__/cascade-picker-popup.spec.js.snap
+++ b/packages/mpx-cube-ui/__tests__/components/cascade-picker-popup/__snapshots__/cascade-picker-popup.spec.js.snap
@@ -1,9 +1,9 @@
// Jest Snapshot v1, https://goo.gl/fbAQLP
-exports[`component cascade-picker unit test base props check matchSnapshot 1`] = `""`;
+exports[`component cascade-picker unit test base props check matchSnapshot 1`] = `""`;
-exports[`component cascade-picker unit test base props check matchSnapshot 2`] = `""`;
+exports[`component cascade-picker unit test base props check matchSnapshot 2`] = `""`;
-exports[`component cascade-picker unit test base set props check matchSnapshot 1`] = `""`;
+exports[`component cascade-picker unit test base set props check matchSnapshot 1`] = `""`;
-exports[`component cascade-picker unit test slot check matchSnapshot 1`] = `""`;
+exports[`component cascade-picker unit test slot check matchSnapshot 1`] = `""`;
diff --git a/packages/mpx-cube-ui/__tests__/components/checkbox-modal/__snapshots__/checkbox-modal.spec.js.snap b/packages/mpx-cube-ui/__tests__/components/checkbox-modal/__snapshots__/checkbox-modal.spec.js.snap
index 685d5201..83b4b0b0 100644
--- a/packages/mpx-cube-ui/__tests__/components/checkbox-modal/__snapshots__/checkbox-modal.spec.js.snap
+++ b/packages/mpx-cube-ui/__tests__/components/checkbox-modal/__snapshots__/checkbox-modal.spec.js.snap
@@ -1,15 +1,15 @@
// Jest Snapshot v1, https://goo.gl/fbAQLP
-exports[`component checkbox-modal unit test render check render 1`] = `""`;
+exports[`component checkbox-modal unit test render check render 1`] = `""`;
-exports[`component checkbox-modal unit test render check render 2`] = `""`;
+exports[`component checkbox-modal unit test render check render 2`] = `""`;
-exports[`component checkbox-modal unit test render check render 3`] = `""`;
+exports[`component checkbox-modal unit test render check render 3`] = `""`;
-exports[`component checkbox-modal unit test render check render 4`] = `""`;
+exports[`component checkbox-modal unit test render check render 4`] = `""`;
-exports[`component checkbox-modal unit test render check render 5`] = `""`;
+exports[`component checkbox-modal unit test render check render 5`] = `""`;
-exports[`component checkbox-modal unit test render check render 6`] = `""`;
+exports[`component checkbox-modal unit test render check render 6`] = `""`;
-exports[`component checkbox-modal unit test slot check render correct 1`] = `""`;
+exports[`component checkbox-modal unit test slot check render correct 1`] = `""`;
diff --git a/packages/mpx-cube-ui/__tests__/components/checkbox-modal/checkbox-modal.spec.js b/packages/mpx-cube-ui/__tests__/components/checkbox-modal/checkbox-modal.spec.js
index a7b6d151..61782b9d 100644
--- a/packages/mpx-cube-ui/__tests__/components/checkbox-modal/checkbox-modal.spec.js
+++ b/packages/mpx-cube-ui/__tests__/components/checkbox-modal/checkbox-modal.spec.js
@@ -133,7 +133,7 @@ describe('component checkbox-modal unit test', function() {
const popup = component.querySelector('cube-modal').querySelector('cube-popup')
const showDom = popup.querySelector('.cube-popup').dom
const maskDom = popup.querySelector('.cube-popup-mask')
- maskDom.dispatchEvent('touchend')
+ maskDom.dispatchEvent('tap')
await simulate.sleep(10)
expect(showDom.className).not.toMatch('show')
})
@@ -241,7 +241,7 @@ describe('component checkbox-modal unit test', function() {
component.addEventListener('close', maskFn)
const popup = component.querySelector('cube-modal').querySelector('cube-popup')
const maskDom = popup.querySelector('.cube-popup-mask')
- maskDom.dispatchEvent('touchend')
+ maskDom.dispatchEvent('tap')
await simulate.sleep(10)
expect(maskFn).toHaveBeenCalled()
})
diff --git a/packages/mpx-cube-ui/__tests__/components/date-picker-modal/__snapshots__/date-picker-modal.spec.js.snap b/packages/mpx-cube-ui/__tests__/components/date-picker-modal/__snapshots__/date-picker-modal.spec.js.snap
index 227962f6..2c75ba20 100644
--- a/packages/mpx-cube-ui/__tests__/components/date-picker-modal/__snapshots__/date-picker-modal.spec.js.snap
+++ b/packages/mpx-cube-ui/__tests__/components/date-picker-modal/__snapshots__/date-picker-modal.spec.js.snap
@@ -1,7 +1,7 @@
// Jest Snapshot v1, https://goo.gl/fbAQLP
-exports[`component picker unit test base defaul props check matchSnapshot 1`] = `""`;
+exports[`component picker unit test base defaul props check matchSnapshot 1`] = `""`;
-exports[`component picker unit test base set props check matchSnapshot 1`] = `""`;
+exports[`component picker unit test base set props check matchSnapshot 1`] = `""`;
-exports[`component picker unit test slot check matchSnapshot 1`] = `""`;
+exports[`component picker unit test slot check matchSnapshot 1`] = `""`;
diff --git a/packages/mpx-cube-ui/__tests__/components/date-picker-popup/__snapshots__/date-picker-popup.spec.js.snap b/packages/mpx-cube-ui/__tests__/components/date-picker-popup/__snapshots__/date-picker-popup.spec.js.snap
index cda51cd4..5abf83e4 100644
--- a/packages/mpx-cube-ui/__tests__/components/date-picker-popup/__snapshots__/date-picker-popup.spec.js.snap
+++ b/packages/mpx-cube-ui/__tests__/components/date-picker-popup/__snapshots__/date-picker-popup.spec.js.snap
@@ -1,5 +1,5 @@
// Jest Snapshot v1, https://goo.gl/fbAQLP
-exports[`component picker unit test base defaul props check matchSnapshot 1`] = `""`;
+exports[`component picker unit test base defaul props check matchSnapshot 1`] = `""`;
-exports[`component picker unit test base set props check matchSnapshot 1`] = `""`;
+exports[`component picker unit test base set props check matchSnapshot 1`] = `""`;
diff --git a/packages/mpx-cube-ui/__tests__/components/dialog/__snapshots__/dialog.spec.js.snap b/packages/mpx-cube-ui/__tests__/components/dialog/__snapshots__/dialog.spec.js.snap
index f5d826ee..edda9e97 100644
--- a/packages/mpx-cube-ui/__tests__/components/dialog/__snapshots__/dialog.spec.js.snap
+++ b/packages/mpx-cube-ui/__tests__/components/dialog/__snapshots__/dialog.spec.js.snap
@@ -1,17 +1,17 @@
// Jest Snapshot v1, https://goo.gl/fbAQLP
-exports[`component dialog unit test base props check matchSnapshot 1`] = `""`;
+exports[`component dialog unit test base props check matchSnapshot 1`] = `""`;
-exports[`component dialog unit test props :headIcon="url" check matchSnapshot 1`] = `""`;
+exports[`component dialog unit test props :headIcon="url" check matchSnapshot 1`] = `""`;
-exports[`component dialog unit test props :icon="hot" check matchSnapshot 1`] = `""`;
+exports[`component dialog unit test props :icon="hot" check matchSnapshot 1`] = `""`;
-exports[`component dialog unit test props :showClose="true" check matchSnapshot 1`] = `""`;
+exports[`component dialog unit test props :showClose="true" check matchSnapshot 1`] = `""`;
-exports[`component dialog unit test props :type="alert" check matchSnapshot 1`] = `""`;
+exports[`component dialog unit test props :type="alert" check matchSnapshot 1`] = `""`;
-exports[`component dialog unit test props :type="confirm" check matchSnapshot 1`] = `""`;
+exports[`component dialog unit test props :type="confirm" check matchSnapshot 1`] = `""`;
-exports[`component dialog unit test should not trigger events when btn is disabled matchSnapshot 1`] = `""`;
+exports[`component dialog unit test should not trigger events when btn is disabled matchSnapshot 1`] = `""`;
-exports[`component dialog unit test slot check matchSnapshot 1`] = `""`;
+exports[`component dialog unit test slot check matchSnapshot 1`] = `""`;
diff --git a/packages/mpx-cube-ui/__tests__/components/modal/__snapshots__/modal.spec.js.snap b/packages/mpx-cube-ui/__tests__/components/modal/__snapshots__/modal.spec.js.snap
index 904d1bc1..2998d262 100644
--- a/packages/mpx-cube-ui/__tests__/components/modal/__snapshots__/modal.spec.js.snap
+++ b/packages/mpx-cube-ui/__tests__/components/modal/__snapshots__/modal.spec.js.snap
@@ -1,27 +1,27 @@
// Jest Snapshot v1, https://goo.gl/fbAQLP
-exports[` 1`] = `""`;
+exports[` 1`] = `""`;
-exports[` 2`] = `""`;
+exports[` 2`] = `""`;
-exports[` 3`] = `""`;
+exports[` 3`] = `""`;
-exports[` 4`] = `""`;
+exports[` 4`] = `""`;
-exports[` 5`] = `""`;
+exports[` 5`] = `""`;
-exports[` 6`] = `""`;
+exports[` 6`] = `""`;
-exports[` 7`] = `""`;
+exports[` 7`] = `""`;
-exports[` 8`] = `""`;
+exports[` 8`] = `""`;
-exports[` 9`] = `""`;
+exports[` 9`] = `""`;
-exports[` 10`] = `""`;
+exports[` 10`] = `""`;
-exports[` 11`] = `""`;
+exports[` 11`] = `""`;
-exports[` 12`] = `""`;
+exports[` 12`] = `""`;
-exports[` 13`] = `""`;
+exports[` 13`] = `""`;
diff --git a/packages/mpx-cube-ui/__tests__/components/popup/__snapshots__/popup.spec.js.snap b/packages/mpx-cube-ui/__tests__/components/popup/__snapshots__/popup.spec.js.snap
index e21057bc..8dd2056f 100644
--- a/packages/mpx-cube-ui/__tests__/components/popup/__snapshots__/popup.spec.js.snap
+++ b/packages/mpx-cube-ui/__tests__/components/popup/__snapshots__/popup.spec.js.snap
@@ -1,7 +1,7 @@
// Jest Snapshot v1, https://goo.gl/fbAQLP
-exports[`component popup unit test base props check matchSnapshot 1`] = `"<i style=\\"color:#fc9153\\">Hello World</i>"`;
+exports[`component popup unit test base props check matchSnapshot 1`] = `"<i style=\\"color:#fc9153\\">Hello World</i>"`;
-exports[`component popup unit test event check matchSnapshot 1`] = `"<i style=\\"color:#fc9153\\">Hello World</i>"`;
+exports[`component popup unit test event check matchSnapshot 1`] = `"<i style=\\"color:#fc9153\\">Hello World</i>"`;
-exports[`component popup unit test slot check matchSnapshot 1`] = `""`;
+exports[`component popup unit test slot check matchSnapshot 1`] = `""`;
diff --git a/packages/mpx-cube-ui/__tests__/components/popup/popup.spec.js b/packages/mpx-cube-ui/__tests__/components/popup/popup.spec.js
index d9b91537..0a814669 100644
--- a/packages/mpx-cube-ui/__tests__/components/popup/popup.spec.js
+++ b/packages/mpx-cube-ui/__tests__/components/popup/popup.spec.js
@@ -79,7 +79,7 @@ describe('component popup unit test', function() {