Skip to content

Rule: no-effects-in-components #130

Description

@San4es

Using effects in components typically leads to business logic leaks into view. A cleaner approach is to use events instead of effects.
I suggest to add corresponding rule to warn a user about it.

// Fail
function Component() {
  useUnit(someFx)
  useEvent(someFx)
  useEffect(() => {
    someFx()
    () => someFx()
  }, [])
  const callback = () => {
    someFx()
  }
  useCallback(() => {
    someFx()
  }, [])
}

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions