docs: remove manual are-equal

This commit is contained in:
unix
2020-04-06 10:21:12 +08:00
parent 127c9bb385
commit a8f250d81c
3 changed files with 11 additions and 16 deletions

View File

@@ -1,4 +1,4 @@
import React, { PropsWithChildren, useEffect, useRef } from 'react'
import React, { useEffect, useRef } from 'react'
import Router from 'next/router'
import { useTheme, Spacer } from 'components'
import SideItem, { SideItemProps, Sides } from './side-item'
@@ -11,13 +11,6 @@ export type SideGroupProps = Props & SideItemProps
export type SideChildren = Sides | Array<Sides>
const areEqual = (
preProps: Readonly<PropsWithChildren<SideGroupProps>>,
nextProps: Readonly<PropsWithChildren<SideGroupProps>>,
): boolean => {
return preProps.sides.length === nextProps.sides.length
}
export const SideGroup: React.FC<{ sides?: SideChildren }> = React.memo(({ sides }) => {
if (!sides) return null
sides = Array.isArray(sides) ? sides : [sides]
@@ -35,7 +28,7 @@ export const Sidebar: React.FC<SideGroupProps> = React.memo(({ sides }) => {
updateSidebarScrollHeight(boxRef.current.scrollTop || 0)
})
}, [])
useEffect(() => {
if (!boxRef.current) return
boxRef.current.scrollTo({ top: sidebarScrollHeight })
@@ -81,6 +74,6 @@ export const Sidebar: React.FC<SideGroupProps> = React.memo(({ sides }) => {
`}</style>
</div>
)
}, areEqual)
})
export default Sidebar

View File

@@ -23,8 +23,10 @@ const SideItem: React.FC<React.PropsWithChildren<SideItemProps>> = React.memo(({
<>
{sides.map((side, index) => {
return (
<div key={`${side.name}-${index}`} className="item">
{!side.url && <ActiveCatalog name={side.name} localeName={side.localeName} />}
<div key={`${side.localeName || side.name}-${index}`} className="item">
{!side.url && <ActiveCatalog name={side.name}
localeName={side.localeName}
key={side.localeName || side.name} />}
{side.url && (
<div className="link">
<ActiveLink href={side.url}><a>{side.name}</a></ActiveLink>