Просмотр исходного кода

Merge pull request #5949 from weseek/fix/sync-editor-scrolltop-by-preview-scrolling

fix: Editor scroll sync by Preview scrolling does not work
Yuki Takei 3 лет назад
Родитель
Сommit
aadb71f45b
1 измененных файлов с 7 добавлено и 3 удалено
  1. 7 3
      packages/app/src/components/PageEditor/Preview.tsx

+ 7 - 3
packages/app/src/components/PageEditor/Preview.tsx

@@ -1,5 +1,5 @@
 import React, {
-  UIEventHandler, useCallback, useEffect, useMemo, useState,
+  useCallback, useEffect, useMemo, useState, SyntheticEvent,
 } from 'react';
 
 
@@ -18,7 +18,7 @@ type Props = {
   inputRef?: React.RefObject<HTMLDivElement>,
   isMathJaxEnabled?: boolean,
   renderMathJaxOnInit?: boolean,
-  onScroll?: UIEventHandler<HTMLDivElement>,
+  onScroll?: (scrollTop: number) => void,
 }
 
 
@@ -89,7 +89,11 @@ const Preview = (props: Props): JSX.Element => {
     <div
       className="page-editor-preview-body"
       ref={inputRef}
-      onScroll={onScroll}
+      onScroll={(event: SyntheticEvent<HTMLDivElement>) => {
+        if (props.onScroll != null) {
+          props.onScroll(event.currentTarget.scrollTop);
+        }
+      }}
     >
       <RevisionBody
         {...props}