diff --git a/CHANGELOG.md b/CHANGELOG.md
index 29e6beed..7d99f7ac 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,4 +1,20 @@
-# [](https://github.com/AntmJS/vantui/compare/v3.6.4...v) (2025-06-12)
+# [](https://github.com/AntmJS/vantui/compare/v3.6.5...v) (2025-09-04)
+
+
+### Bug Fixes
+
+* Form判断异步rule方法时,传callback以兼容同步rule的调用 ([#779](https://github.com/AntmJS/vantui/issues/779)) ([8800858](https://github.com/AntmJS/vantui/commit/88008586f3f65cc911a9bd36a0e10ad7d95343d0))
+* **uploader:** 不再使用过时的chooseImage和chooseVideo方法 ([#780](https://github.com/AntmJS/vantui/issues/780)) ([bc7f438](https://github.com/AntmJS/vantui/commit/bc7f438aec9c5113145a4a296b300a79522ab0fb))
+* 轮播组件禁用手动滑动功能 ([015f265](https://github.com/AntmJS/vantui/commit/015f26513d9c5baf6a137036fdaff11be507a53e))
+
+
+### Features
+
+* **highlight:** 新增 Highlight 高亮文本组件 ([#782](https://github.com/AntmJS/vantui/issues/782)) ([95b9ba9](https://github.com/AntmJS/vantui/commit/95b9ba9f5b67b7a2b85bb843425099ad8d5e600a))
+
+
+
+## [3.6.5](https://github.com/AntmJS/vantui/compare/v3.6.4...v3.6.5) (2025-06-12)
### Bug Fixes
diff --git a/lerna.json b/lerna.json
index 93a49ec8..e8f90e32 100644
--- a/lerna.json
+++ b/lerna.json
@@ -16,5 +16,5 @@
"**/*.md",
"**/__test__/**"
],
- "version": "3.6.5"
+ "version": "3.6.6"
}
\ No newline at end of file
diff --git a/packages/vantui-cli/package.json b/packages/vantui-cli/package.json
index af00bde9..29137bb0 100644
--- a/packages/vantui-cli/package.json
+++ b/packages/vantui-cli/package.json
@@ -1,6 +1,6 @@
{
"name": "@antmjs/vantui-cli",
- "version": "3.6.5",
+ "version": "3.6.6",
"type": "module",
"main": "dest/cli.js",
"bin": {
diff --git a/packages/vantui-demo/package.json b/packages/vantui-demo/package.json
index 351b298f..c609c077 100644
--- a/packages/vantui-demo/package.json
+++ b/packages/vantui-demo/package.json
@@ -1,6 +1,6 @@
{
"name": "vantui-demo",
- "version": "3.6.5",
+ "version": "3.6.6",
"private": true,
"description": "Taro应用模版",
"templateInfo": {
diff --git a/packages/vantui/package.json b/packages/vantui/package.json
index c743a22c..cec98eee 100644
--- a/packages/vantui/package.json
+++ b/packages/vantui/package.json
@@ -1,6 +1,6 @@
{
"name": "@antmjs/vantui",
- "version": "3.6.5",
+ "version": "3.6.6",
"main": "lib/index.js",
"module": "es/index.esm.js",
"style": "lib/index.css",
@@ -74,4 +74,4 @@
"style-resources-loader": "^1.5.0",
"swc-loader": "^0.2.3"
}
-}
\ No newline at end of file
+}
diff --git a/packages/vantui/src/dialog/README.md b/packages/vantui/src/dialog/README.md
index dd21394d..9c0f67b2 100644
--- a/packages/vantui/src/dialog/README.md
+++ b/packages/vantui/src/dialog/README.md
@@ -97,22 +97,22 @@ import { Dialog } from '@antmjs/vantui'
组件提供了下列 CSS 变量,可用于自定义样式,使用方法请参考[ConfigProvider 组件](https://antmjs.github.io/vantui/#/config-provider)
-| 名称 | 默认值 |
-| -------------------------------------- | -------------------- |
-| --dialog-width | `640px;` |
-| --dialog-small-screen-width | `90%;` |
-| --dialog-font-size | `@font-size-lg;` |
-| --dialog-border-radius | `32px;` |
-| --dialog-background-color | `@white;` |
-| --dialog-header-font-weight | `@font-weight-bold;` |
-| --dialog-header-line-height | `48px;` |
-| --dialog-header-padding-top | `@padding-lg;` |
-| --dialog-header-isolated-padding | `@padding-lg 0;` |
-| --dialog-message-padding | `@padding-lg;` |
-| --dialog-message-font-size | `@font-size-md;` |
-| --dialog-message-line-height | `40px;` |
-| --dialog-message-max-height | `60vh;` |
-| --dialog-has-title-message-text-color | `@gray-7;` |
-| --dialog-has-title-message-padding-top | `@padding-xs;` |
-| --dialog-cancel-button-color | `@gray-7;` |
-| --dialog-confirm-button-color | `@text-link-color;` |
+| 名称 | 默认值 |
+| -------------------------------------- | --------------------- |
+| --dialog-width | ` 640px;` |
+| --dialog-small-screen-width | ` 90%;` |
+| --dialog-font-size | ` @font-size-lg;` |
+| --dialog-border-radius | ` 32px;` |
+| --dialog-background-color | ` @white;` |
+| --dialog-header-font-weight | ` @font-weight-bold;` |
+| --dialog-header-line-height | ` 48px;` |
+| --dialog-header-padding-top | ` @padding-lg;` |
+| --dialog-header-isolated-padding | ` @padding-lg 0;` |
+| --dialog-message-padding | ` @padding-lg;` |
+| --dialog-message-font-size | ` @font-size-md;` |
+| --dialog-message-line-height | ` 40px;` |
+| --dialog-message-max-height | ` 60vh;` |
+| --dialog-has-title-message-text-color | ` @gray-7;` |
+| --dialog-has-title-message-padding-top | ` @padding-xs;` |
+| --dialog-cancel-button-color | ` @gray-7;` |
+| --dialog-confirm-button-color | ` @text-link-color;` |
diff --git a/packages/vantui/src/form/README.md b/packages/vantui/src/form/README.md
index 228fb64e..bc173933 100644
--- a/packages/vantui/src/form/README.md
+++ b/packages/vantui/src/form/README.md
@@ -66,30 +66,30 @@ FormItem 需要代理下级表单组件的值和触发事件
### FormItemProps [[详情]](https://github.com/AntmJS/vantui/tree/main/packages/vantui/types/form.d.ts)
-| 参数 | 说明 | 类型 | 默认值 | 必填 |
-| ----------------- | ---------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- | ------- |
-| mutiLevel | 组件值默认数据类型为基本类型(string、number...), 对象数组形式的数据需要设置为 true | _ boolean
_ | - | `false` |
-| name | 对应表单字段名 | _ attr:
¦ string
¦ Array<
string ¦ number
>
_ | - | `true` |
-| children | 第一级操作表单组件 | _ ReactNode
_ | - | `true` |
-| label | 表单 label | _ ReactNode
_ | - | `true` |
-| labelName | 表单 label 字符串, 当 label 不为字符串的时候,传入 labelName | _ string
_ | - | `false` |
-| layout | 垂直 | 水平 | _ attr:
¦ "vertical"
¦ "horizontal"
_ | horizontal | `false` |
-| required | 是否必填 | _ boolean
_ | `false` | `false` |
-| validateTrigger | 验证表单触发方法名 | _ string
_ | `onChange` | `false` |
-| borderBottom | 下边框 | _ boolean
_ | `false` | `false` |
-| labelClassName | label 的外层 className | _ string
_ | - | `false` |
-| messageClassName | 提示信息的 className,某些错误情况可以自定义样式 | _ string
_ | - | `false` |
-| requiredClassName | required 的外层 className | _ string
_ | - | `false` |
-| controllClassName | 表单组件的外层 className | _ string
_ | - | `false` |
-| controllFlexEnd | 表单组件的靠右布局 | _ boolean
_ | - | `false` |
-| className | formItem 最外层 className | _ string
_ | - | `false` |
-| requiredIcon | 自定义必填标识 | _ ReactNode
_ | - | `false` |
-| feedback | 验证后反馈的信息,可设置为校验成功、失败、都展示或隐藏 | _ attr:
¦ "success"
¦ "failed"
¦ "all"
¦ "hidden"
_ | `failed` | `false` |
-| renderRight | 自定义渲染右边内容 | _ ReactNode
_ | - | `false` |
-| trigger | 表单交互触发方法 | _ string
_ | `onChange` | `false` |
-| valueKey | 表单控制展示的具体值的字段名 | _ string
_ | `value` | `false` |
-| valueFormat | 根据表单交互回掉函数(时间)参数的重新定义 | _ (
value: any,
name:
¦ string
¦ Array<
string ¦ number
>,
IFormInstance: IFormInstanceAPI
) => any
_ | `value` | `false` |
-| rules | 正则校验值,或者自定义校验后 call 回掉函数返回错误信息,支持数组或单项设置 | _ attr:
¦ {
rule:
¦ ((
value: any,
call: (
errMess: string
) => void
) => void)
¦ RegExp
message?: string
}[]
¦ {
rule:
¦ ((
value: any,
call: (
errMess: string
) => void
) => void)
¦ RegExp
message?: string
}
_ | - | `false` |
+| 参数 | 说明 | 类型 | 默认值 | 必填 |
+| ----------------- | ---------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- | ------- |
+| mutiLevel | 组件值默认数据类型为基本类型(string、number...), 对象数组形式的数据需要设置为 true | _ boolean
_ | - | `false` |
+| name | 对应表单字段名 | _ attr:
¦ string
¦ Array<
string ¦ number
>
_ | - | `true` |
+| children | 第一级操作表单组件 | _ ReactNode
_ | - | `true` |
+| label | 表单 label | _ ReactNode
_ | - | `true` |
+| labelName | 表单 label 字符串, 当 label 不为字符串的时候,传入 labelName | _ string
_ | - | `false` |
+| layout | 垂直 | 水平 | _ attr:
¦ "vertical"
¦ "horizontal"
_ | horizontal | `false` |
+| required | 是否必填 | _ boolean
_ | `false` | `false` |
+| validateTrigger | 验证表单触发方法名 | _ string
_ | `onChange` | `false` |
+| borderBottom | 下边框 | _ boolean
_ | `false` | `false` |
+| labelClassName | label 的外层 className | _ string
_ | - | `false` |
+| messageClassName | 提示信息的 className,某些错误情况可以自定义样式 | _ string
_ | - | `false` |
+| requiredClassName | required 的外层 className | _ string
_ | - | `false` |
+| controllClassName | 表单组件的外层 className | _ string
_ | - | `false` |
+| controllFlexEnd | 表单组件的靠右布局 | _ boolean
_ | - | `false` |
+| className | formItem 最外层 className | _ string
_ | - | `false` |
+| requiredIcon | 自定义必填标识 | _ ReactNode
_ | - | `false` |
+| feedback | 验证后反馈的信息,可设置为校验成功、失败、都展示或隐藏 | _ attr:
¦ "success"
¦ "failed"
¦ "all"
¦ "hidden"
_ | `failed` | `false` |
+| renderRight | 自定义渲染右边内容 | _ ReactNode
_ | - | `false` |
+| trigger | 表单交互触发方法 | _ string
_ | `onChange` | `false` |
+| valueKey | 表单控制展示的具体值的字段名 | _ string
_ | `value` | `false` |
+| valueFormat | 根据表单交互回掉函数(时间)参数的重新定义 | _ (
value: any,
name:
¦ string
¦ Array<
string ¦ number
>,
IFormInstance: IFormInstanceAPI
) => any
_ | `value` | `false` |
+| rules | 正则校验值,或者自定义校验后 call 回掉函数返回错误信息,支持数组或单项设置 | _ attr:
¦ {
rule:
¦ ((
value: any,
call: (
errMess: string
) => void
) => void)
¦ RegExp
message?: string
}[]
¦ {
rule:
¦ ((
value: any,
call: (
errMess: string
) => void
) => void)
¦ RegExp
message?: string
}
¦ {
rule: (
value: any
) => Promise<
¦ string
¦ undefined
¦ null
>
message?: string
}
_ | - | `false` |
### IFormInstance [[详情]](https://github.com/AntmJS/vantui/tree/main/packages/vantui/types/form.d.ts)
diff --git a/packages/vantui/src/highlight/index.tsx b/packages/vantui/src/highlight/index.tsx
index c315bae8..dc3881a5 100644
--- a/packages/vantui/src/highlight/index.tsx
+++ b/packages/vantui/src/highlight/index.tsx
@@ -3,7 +3,6 @@ import { useMemo } from 'react'
import classNames from 'classnames'
import { HighlightProps } from '../../types/highlight'
import * as utils from '../wxs/utils'
-import './index.less'
interface Chunk {
start: number
diff --git a/packages/vantui/src/picker/README.md b/packages/vantui/src/picker/README.md
index ee9d8c25..35bc59f0 100644
--- a/packages/vantui/src/picker/README.md
+++ b/packages/vantui/src/picker/README.md
@@ -117,3 +117,23 @@ import { Picker } from '@antmjs/vantui'
| setIndexes | 设置每一列展示的下标 | _ (
indexes: number[]
) => void
_ |
| getValues | 每一列展示的值 | _ () => any
_ |
| confirm | 触发确认的方法 | _ () => void
_ |
+
+### 样式变量
+
+组件提供了下列 CSS 变量,可用于自定义样式,使用方法请参考[ConfigProvider 组件](https://antmjs.github.io/vantui/#/config-provider)
+
+| 名称 | 默认值 |
+| ----------------------------------- | ---------------------------- |
+| --picker-background-color | ` @white;` |
+| --picker-toolbar-height | ` 88px;` |
+| --picker-title-font-size | ` @font-size-lg;` |
+| --picker-action-padding | ` 0 @padding-md;` |
+| --picker-action-font-size | ` @font-size-md;` |
+| --picker-confirm-action-color | ` @text-link-color;` |
+| --picker-cancel-action-color | ` @gray-6;` |
+| --picker-option-font-size | ` @font-size-lg;` |
+| --picker-option-text-color | ` @black;` |
+| --picker-loading-icon-color | ` var(--primary-color);` |
+| --picker-loading-mask-color | ` rgba(255, 255, 255, 0.9);` |
+| --picker-option-disabled-opacity | ` 0.3;` |
+| --picker-option-selected-text-color | ` @text-color;` |
diff --git a/packages/vantui/src/uploader/utils.ts b/packages/vantui/src/uploader/utils.ts
index b13cdd16..df4adb5c 100644
--- a/packages/vantui/src/uploader/utils.ts
+++ b/packages/vantui/src/uploader/utils.ts
@@ -94,24 +94,24 @@ export function chooseFile({
return new Promise((resolve, reject) => {
switch (accept) {
case 'image':
- process.env.TARO_ENV === 'weapp' ?
- chooseMedia({
- count: multiple ? Math.min(maxCount, 9) : 1,
- mediaType: ['image'],
- sourceType: capture || ['album', 'camera'],
- maxDuration,
- sizeType: sizeType || ['original', 'compressed'],
- camera: camera || 'back',
- success: (res) => resolve(formatMedia(res)),
- fail: reject,
- }) :
- chooseImage({
- count: multiple ? Math.min(maxCount, 9) : 1,
- sourceType: capture || ['album', 'camera'],
- sizeType: sizeType || ['original', 'compressed'],
- success: (res) => resolve(formatImage(res)),
- fail: reject,
- })
+ process.env.TARO_ENV === 'weapp'
+ ? chooseMedia({
+ count: multiple ? Math.min(maxCount, 9) : 1,
+ mediaType: ['image'],
+ sourceType: capture || ['album', 'camera'],
+ maxDuration,
+ sizeType: sizeType || ['original', 'compressed'],
+ camera: camera || 'back',
+ success: (res) => resolve(formatMedia(res)),
+ fail: reject,
+ })
+ : chooseImage({
+ count: multiple ? Math.min(maxCount, 9) : 1,
+ sourceType: capture || ['album', 'camera'],
+ sizeType: sizeType || ['original', 'compressed'],
+ success: (res) => resolve(formatImage(res)),
+ fail: reject,
+ })
break
case 'media':
chooseMedia({
@@ -125,27 +125,27 @@ export function chooseFile({
})
break
case 'video':
- process.env.TARO_ENV === 'weapp' ?
- chooseMedia({
- count: multiple ? Math.min(maxCount, 9) : 1,
- mediaType: ['video'],
- sourceType: capture || ['album', 'camera'],
- maxDuration,
- sizeType: compressed
- ? ['compressed']
- : sizeType || ['original', 'compressed'],
- camera: camera || 'back',
- success: (res) => resolve(formatMedia(res)),
- fail: reject,
- }) :
- chooseVideo({
- sourceType: capture || ['album', 'camera'],
- compressed,
- maxDuration: maxDuration || 60,
- camera: camera || 'back',
- success: (res) => resolve(formatVideo(res)),
- fail: reject,
- })
+ process.env.TARO_ENV === 'weapp'
+ ? chooseMedia({
+ count: multiple ? Math.min(maxCount, 9) : 1,
+ mediaType: ['video'],
+ sourceType: capture || ['album', 'camera'],
+ maxDuration,
+ sizeType: compressed
+ ? ['compressed']
+ : sizeType || ['original', 'compressed'],
+ camera: camera || 'back',
+ success: (res) => resolve(formatMedia(res)),
+ fail: reject,
+ })
+ : chooseVideo({
+ sourceType: capture || ['album', 'camera'],
+ compressed,
+ maxDuration: maxDuration || 60,
+ camera: camera || 'back',
+ success: (res) => resolve(formatVideo(res)),
+ fail: reject,
+ })
break
default:
chooseMessageFile({