File tree Expand file tree Collapse file tree 5 files changed +12
-2
lines changed
packages/react-photo-view/src Expand file tree Collapse file tree 5 files changed +12
-2
lines changed Original file line number Diff line number Diff line change @@ -27,6 +27,7 @@ title: API
2727| loadingElement | Custom loading | JSX\. Element |
2828| brokenElement | Custom loading failed rendering | JSX\. Element \| \(\( photoProps: BrokenElementParams\) => ; JSX\. Element\) |
2929| portalContainer | Custom portal target (e.g. for usage in web components) | HTMLElement | document.body |
30+ | enableMouseWheel | Whether to enable mouse wheel zoom | boolean | true |
3031
3132## PhotoView
3233
Original file line number Diff line number Diff line change @@ -27,6 +27,7 @@ title: API
2727| loadingElement | 自定义 loading | JSX\. Element |
2828| brokenElement | 自定义加载失败渲染 | JSX\. Element \| \(\( photoProps: BrokenElementParams\) => ; JSX\. Element\) |
2929| portalContainer | | HTMLElement | document.body |
30+ | enableMouseZoom | 是否启用鼠标缩放 | boolean | true |
3031
3132## PhotoView
3233
Original file line number Diff line number Diff line change @@ -64,6 +64,8 @@ export interface PhotoBoxProps {
6464 expose : ( state : ExposedProperties ) => void
6565 // 是否在当前操作中
6666 isActive : boolean
67+ // 是否开启鼠标缩放
68+ enableMouseZoom ?: boolean
6769}
6870
6971const initialState = {
@@ -146,7 +148,7 @@ export default function PhotoBox({
146148 style,
147149 loadingElement,
148150 brokenElement,
149-
151+ enableMouseZoom = true ,
150152 onPhotoTap,
151153 onMaskTap,
152154 onReachMove,
@@ -477,7 +479,7 @@ export default function PhotoBox({
477479 }
478480
479481 function handleWheel ( e : React . WheelEvent ) {
480- if ( ! reach ) {
482+ if ( ! reach && enableMouseZoom ) {
481483 // 限制最大倍数和最小倍数
482484 const delta = isDragMode ? e . deltaY / 100 / 16 : e . deltaY / 100 / 2
483485 const toScale = limitScale ( scale - delta , isDragMode , naturalWidth / width )
Original file line number Diff line number Diff line change @@ -138,6 +138,7 @@ export default function PhotoSlider(props: IPhotoSliderProps) {
138138 onClose,
139139 afterClose,
140140 portalContainer,
141+ enableMouseZoom = true ,
141142 } = props
142143
143144 const isDragMode = useMemo ( ( ) => {
@@ -492,6 +493,7 @@ export default function PhotoSlider(props: IPhotoSliderProps) {
492493 onPhotoResize = { handleResize }
493494 isActive = { ( currentImage && currentImage . key ) === item . key }
494495 expose = { updateState }
496+ enableMouseZoom = { enableMouseZoom }
495497 />
496498 )
497499 } ) }
Original file line number Diff line number Diff line change @@ -108,6 +108,10 @@ export interface PhotoProviderBase {
108108 * @defaultValue document.body
109109 */
110110 portalContainer ?: HTMLElement
111+ /**
112+ * 是否开启鼠标缩放
113+ */
114+ enableMouseZoom ?: boolean
111115}
112116
113117export type PhotoRenderParams = {
You can’t perform that action at this time.
0 commit comments