🤖

ReactでCan't access lexical declarationが出た時

2024/06/10に公開

React でReferenceError: can't access lexical declaration 'Child' before initializationが出た時

Child はコンポーネントだとします。

components/organisms/index.ts
export * from './Parent'
export * from './Child'

Parent.tsx

Parent.tsx
import { Child } from '@/components/organisms'

export const Parent = () => {
  return <Child />
}
Child.tsx
export const Child = () => {
  return <p>hoge</p>
}

これだとエラーになります。
この場合、Parent の import 文を直してあげることで修正できます

Parent.tsx
import { Child } from '@/components'

export const Parent = () => {
  return <Child />
}

organismsを消したら直ります。消さなくても正常に動くと思っていたので、なぜかはわかってないですがいったんメモで

GitHubで編集を提案

Discussion