CompositionArea: Only reset message contents if id has changed
This commit is contained in:
parent
2378776e1b
commit
6d868030ae
1 changed files with 9 additions and 3 deletions
|
@ -58,6 +58,7 @@ import {
|
||||||
import { MediaEditor } from './MediaEditor';
|
import { MediaEditor } from './MediaEditor';
|
||||||
import { isImageTypeSupported } from '../util/GoogleChrome';
|
import { isImageTypeSupported } from '../util/GoogleChrome';
|
||||||
import * as KeyboardLayout from '../services/keyboardLayout';
|
import * as KeyboardLayout from '../services/keyboardLayout';
|
||||||
|
import { usePrevious } from '../hooks/usePrevious';
|
||||||
|
|
||||||
export type CompositionAPIType =
|
export type CompositionAPIType =
|
||||||
| {
|
| {
|
||||||
|
@ -342,13 +343,18 @@ export function CompositionArea({
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
|
const previousMessageCompositionId = usePrevious(
|
||||||
|
messageCompositionId,
|
||||||
|
messageCompositionId
|
||||||
|
);
|
||||||
useEffect(() => {
|
useEffect(() => {
|
||||||
if (!inputApiRef.current) {
|
if (!inputApiRef.current) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
if (previousMessageCompositionId !== messageCompositionId) {
|
||||||
inputApiRef.current.reset();
|
inputApiRef.current.reset();
|
||||||
}, [messageCompositionId]);
|
}
|
||||||
|
}, [messageCompositionId, previousMessageCompositionId]);
|
||||||
|
|
||||||
const insertEmoji = useCallback(
|
const insertEmoji = useCallback(
|
||||||
(e: EmojiPickDataType) => {
|
(e: EmojiPickDataType) => {
|
||||||
|
|
Loading…
Add table
Reference in a new issue