From 481bad5df95f7760758082ddf0a7d14d99acc892 Mon Sep 17 00:00:00 2001 From: neverland Date: Fri, 14 Jan 2022 16:35:37 +0800 Subject: [PATCH] feat(ImagePreview): improve zoom fluency (#10187) --- README.zh-CN.md | 2 +- packages/vant/docs/markdown/home.zh-CN.md | 2 +- packages/vant/src/image-preview/ImagePreviewItem.tsx | 6 +++++- 3 files changed, 7 insertions(+), 3 deletions(-) diff --git a/README.zh-CN.md b/README.zh-CN.md index 0c30ee1a4..42a7d38d6 100644 --- a/README.zh-CN.md +++ b/README.zh-CN.md @@ -25,7 +25,7 @@ ### 介绍 -Vant 是**有赞前端团队**开源的移动端组件库,于 2017 年开源,已持续维护 4 年时间。Vant 对内承载了有赞所有核心业务,对外服务十多万开发者,是业界主流的移动端组件库之一。 +Vant 是**有赞前端团队**开源的移动端组件库,于 2017 年开源。Vant 对内承载了有赞所有核心业务,对外服务十多万开发者,是业界主流的移动端组件库之一。 目前 Vant 官方提供了 [Vue 2 版本](https://vant-contrib.gitee.io/vant)、[Vue 3 版本](https://vant-contrib.gitee.io/vant/v3)和[微信小程序版本](http://vant-contrib.gitee.io/vant-weapp),并由社区团队维护 [React 版本](https://github.com/mxdi9i7/vant-react)和[支付宝小程序版本](https://github.com/ant-move/Vant-Aliapp)。 diff --git a/packages/vant/docs/markdown/home.zh-CN.md b/packages/vant/docs/markdown/home.zh-CN.md index b40579aa8..c94496d15 100644 --- a/packages/vant/docs/markdown/home.zh-CN.md +++ b/packages/vant/docs/markdown/home.zh-CN.md @@ -8,7 +8,7 @@ ### 介绍 -Vant 是**有赞前端团队**开源的移动端组件库,于 2017 年开源,已持续维护 4 年时间。Vant 对内承载了有赞所有核心业务,对外服务十多万开发者,是业界主流的移动端组件库之一。 +Vant 是**有赞前端团队**开源的移动端组件库,于 2017 年开源。Vant 对内承载了有赞所有核心业务,对外服务十多万开发者,是业界主流的移动端组件库之一。 目前 Vant 官方提供了 [Vue 2 版本](https://vant-contrib.gitee.io/vant)、[Vue 3 版本](https://vant-contrib.gitee.io/vant/v3)和[微信小程序版本](http://vant-contrib.gitee.io/vant-weapp),并由社区团队维护 [React 版本](https://github.com/mxdi9i7/vant-react)和[支付宝小程序版本](https://github.com/ant-move/Vant-Aliapp)。 diff --git a/packages/vant/src/image-preview/ImagePreviewItem.tsx b/packages/vant/src/image-preview/ImagePreviewItem.tsx index 2e635c8a8..141cce3f1 100644 --- a/packages/vant/src/image-preview/ImagePreviewItem.tsx +++ b/packages/vant/src/image-preview/ImagePreviewItem.tsx @@ -106,7 +106,7 @@ export default defineComponent({ }); const setScale = (scale: number) => { - scale = clamp(scale, +props.minZoom, +props.maxZoom); + scale = clamp(scale, +props.minZoom, +props.maxZoom + 1); if (scale !== state.scale) { state.scale = scale; @@ -236,6 +236,10 @@ export default defineComponent({ if (state.scale < 1) { resetScale(); } + + if (state.scale > props.maxZoom) { + state.scale = +props.maxZoom; + } } }