From 06a7b0dd14ade07bcc6d3c0b939c5dea6b93fbcf Mon Sep 17 00:00:00 2001 From: Rob Eisenberg Date: Wed, 27 Mar 2024 13:30:11 -0400 Subject: [PATCH] doc: add explanation to the effect example --- packages/signal-polyfill/readme.md | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/packages/signal-polyfill/readme.md b/packages/signal-polyfill/readme.md index 6a86035..e2cb314 100644 --- a/packages/signal-polyfill/readme.md +++ b/packages/signal-polyfill/readme.md @@ -42,6 +42,12 @@ Depending on how the effect is implemented, the above code could result in an in ### Creating a simple effect +* You can use `Signal.subtle.Watch(callback)` combined with `Signal.Computed(callback)` to create a simple _effect_ implementation. +* The `Signal.subtle.Watch` `callback` is invoked synchronously when a watched signal becomes dirty. +* To batch effect updates, library authors are expected to implement their own schedulers. +* Use `Signal.subtle.Watch#getPending()` to retrieve an array of dirty signals. +* Calling `Signal.subtle.Watch#watch()` with no arguments will re-watch the list of tracked signals again. + ```js import { Signal } from "signal-polyfill";