TinyBase logoTinyBase β

onSynchronizerStatus

The onSynchronizerStatus function registers a listener that is called whenever the status of a Synchronizer changes.

onSynchronizerStatus(
  listener: StatusListener,
  synchronizerOrSynchronizerId?: MaybeGetter<undefined | SynchronizerOrSynchronizerId>,
): void
TypeDescription
listenerStatusListener

The function to call when the status changes.

synchronizerOrSynchronizerId?MaybeGetter<undefined | SynchronizerOrSynchronizerId>

The Synchronizer to use, or its Id.

returnsvoid

This has no return value.

Example

This example registers a Svelte listener and responds to a TinyBase change.

App.svelte
<svelte:options runes={true} />

<script>
  import {onSynchronizerStatus} from 'tinybase/ui-svelte';

  let {synchronizer} = $props();
  let seen = $state('');

  onSynchronizerStatus(() => (seen = 'changed'), synchronizer);
</script>

{seen}
import {flushSync, mount} from 'svelte';
import {createMergeableStore} from 'tinybase';
import {createLocalSynchronizer} from 'tinybase/synchronizers/synchronizer-local';
import App from './App.svelte';

const store = createMergeableStore();
const synchronizer = createLocalSynchronizer(store);
const app = document.body.appendChild(document.createElement('div'));
flushSync(() => mount(App, {target: app, props: {synchronizer}}));
await synchronizer.save();
flushSync();
console.log(app.textContent);
// -> 'changed'

Since

v8.1.0