Skip to content

Bug: eslint-plugin-react-hooks doesn't work inside export default () => { ... } #27184

@alexgorbatchev

Description

@alexgorbatchev

React version: 18

Steps To Reproduce

https://codesandbox.io/s/blissful-margulis-gljgjm?file=/src/App.js

import { useEffect } from 'react';

export default () => {
  const isVal = 0;

  if (isVal) {
    // NO HOOK WARNING
    useEffect(() => {
      //
    });
  }

  return (
    <div className="App">
      <h1>Hello CodeSandbox</h1>
    </div>
  );
}
import { useEffect } from 'react';

export default function App() {
  const isVal = 0;

  if (isVal) {
    // SHOWS HOOK WARNING
    useEffect(() => {
      //
    });
  }

  return (
    <div className="App">
      <h1>Hello CodeSandbox</h1>
    </div>
  );
}

The current behavior

Conditional hook usage isn't detected inside export default () => { ... }

The expected behavior

Conditional hook usage should be detected inside export default () => { ... }

Metadata

Metadata

Assignees

No one assigned

    Labels

    Status: UnconfirmedA potential issue that we haven't yet confirmed as a bug

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions