core / type

SignalsEffect

A function that can be registered to run when signal values change.

Source: src/_core/signal/types.ts

A function that can be registered to run when signal values change.

Effects are created by the effect() function and track dependencies by accessing .value on signals during execution.

Signature

export type SignalsEffect = {
  /** The effect function body */
  (): void;
  /** Flag indicating whether the effect is marked for disposal */
  canDisposeNow: boolean;
  /** Marks the effect for disposal */
  dispose(): void;
};

Remarks

  • The effect function runs immediately when created
  • It re-runs whenever any tracked signal's value changes
  • The canDisposeNow flag marks the effect for disposal
  • Calling dispose() sets canDisposeNow to true

See Also