Skip to content

Commit ee1894c

Browse files
committed
fix: toc not responsive in dev mode
Signed-off-by: Innei <i@innei.in>
1 parent 35da266 commit ee1894c

File tree

1 file changed

+8
-2
lines changed

1 file changed

+8
-2
lines changed

src/renderer/src/components/ui/markdown/Markdown.tsx

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -47,9 +47,15 @@ export const HTML = <A extends keyof JSX.IntrinsicElements = "div">(
4747
) => {
4848
const { children, renderInlineStyle, as = "div", accessory, ...rest } = props
4949
const [remarkOptions, setRemarkOptions] = useState({ renderInlineStyle })
50+
const [shouldForceReMountKey, setShouldForceReMountKey] = useState(0)
5051

5152
useEffect(() => {
52-
setRemarkOptions({ renderInlineStyle })
53+
setRemarkOptions((options) => {
54+
if (renderInlineStyle === options.renderInlineStyle) return options
55+
56+
setShouldForceReMountKey((key) => key + 1)
57+
return { ...options, renderInlineStyle }
58+
})
5359
}, [renderInlineStyle])
5460

5561
const [refElement, setRefElement] = useState<HTMLElement | null>(null)
@@ -67,7 +73,7 @@ export const HTML = <A extends keyof JSX.IntrinsicElements = "div">(
6773
return (
6874
<MarkdownRenderContainerRefContext.Provider value={refElement}>
6975
{createElement(as, { ...rest, ref: setRefElement }, markdownElement)}
70-
{accessory && <Fragment key={children}>{accessory}</Fragment>}
76+
{accessory && <Fragment key={shouldForceReMountKey}>{accessory}</Fragment>}
7177
</MarkdownRenderContainerRefContext.Provider>
7278
)
7379
}

0 commit comments

Comments
 (0)