TinyTick logoTinyTick

useStartCallback

The useStartCallback hook returns a callback that can be used to start the Manager provided by a Provider component.

useStartCallback(): () => Manager | undefined
returns() => Manager | undefined

A callback that starts the Manager.

Example

This example shows how to use the useStartCallback hook within a component that's nested inside a Provider. The callback is used to start the Manager when the status is clicked.

import React from 'react';
import {createRoot} from 'react-dom/client';
import {createManager} from 'tinytick';
import {Provider, useStartCallback, useStatus} from 'tinytick/ui-react';

const Pane = () => {
  const handleClick = useStartCallback();
  return (
    <span id="span" onClick={handleClick}>
      Manager status: {useStatus()}
    </span>
  );
};

const App = ({manager}) => (
  <Provider manager={manager}>
    <Pane />
  </Provider>
);

const app = document.createElement('div');
const manager = createManager();
createRoot(app).render(<App manager={manager} />);
const span = app.querySelector('span');

console.log(span.innerHTML);
// -> 'Manager status: 0'

// User clicks the <span> element:
// -> span MouseEvent('click', {bubbles: true})

console.log(span.innerHTML);
// -> 'Manager status: 1'

Since

v1.2.0