LogoSignals.dart
Copy Markdown
rodydavis/signals.dart 999999

Type: ActionExt1

API reference and details for ActionExt1 from signals.dart.

ActionExt1#

Kind: extension  |  Package: package:preact_signals

Extension: ActionExt1#

extension ActionExt1 on R Function(A)

Extension on a 1-argument function to wrap it in a type-safe action.

Enables calling .action directly on any 1-argument function to wrap it.

Example Usage#

import 'package:preact_signals/preact_signals.dart';

final name = signal('Jane');
final clicks = signal(0);

void updateName(String newName) {
  name.value = newName;
  clicks.value++;
}

// Create a batched, untracked action from the function
final setName = updateName.action;

void main() {
  effect(() => print('Name: ${name.value}, Clicks: ${clicks.value}'));
  // Prints: "Name: Jane, Clicks: 0"

  setName('John');
  // Updates both name and clicks inside a batch.
  // Triggers the effect exactly once.
  // Prints: "Name: John, Clicks: 1"
}

Members of ActionExt1#

Member Type Signature Description
action method dart R Function(A) action Wraps the 1-argument function in a type-safe action.

References#

The ActionExt1 type is referenced and used in the following pages: