Skip to main content

@lexical/react/useExtensionSignalValue

Type Aliases​

SignalValue​

SignalValue<S> = S extends ReadonlySignal<infer V> ? V : never

Defined in: packages/lexical-react/src/useExtensionSignalValue.ts:49

Type helper that extracts the value type from a ReadonlySignal. If the type is not a ReadonlySignal, it returns never.

Type Parameters​

S​

S

Example​

type MySignal = ReadonlySignal<number>;
type Value = SignalValue<MySignal>; // number

Functions​

useExtensionSignalValue()​

useExtensionSignalValue<Extension, K>(extension, prop): SignalValue<LexicalExtensionOutput<Extension>[K]>

Defined in: packages/lexical-react/src/useExtensionSignalValue.ts:74

A React hook that subscribes to a signal property from a Lexical extension's output and returns its current value. The component will re-render whenever the signal's value changes.

This hook combines the functionality of useExtensionDependency and useSignalValue, providing a convenient way to access reactive values from Lexical extensions.

Type Parameters​

Extension​

Extension extends AnyLexicalExtension

K​

K extends string | number | symbol

Parameters​

extension​

Extension

The Lexical extension instance

prop​

K

The property name in the extension's output that contains a signal

Returns​

SignalValue<LexicalExtensionOutput<Extension>[K]>

The current value of the signal property

Example​

import {useExtensionSignalValue} from '@lexical/react/useExtensionSignalValue';
import {MyExtension} from './MyExtension';

function MyComponent() {
// Assuming MyExtension has a signal property 'count' in its output
const count = useExtensionSignalValue(MyExtension, 'count');
return <div>Count: {count}</div>;
}

useSignalValue()​

useSignalValue<V>(s): V

Defined in: packages/lexical-react/src/useExtensionSignalValue.ts:31

A React hook that subscribes to a signal and returns its current value. The component will re-render whenever the signal's value changes.

Type Parameters​

V​

V

Parameters​

s​

ReadonlySignal<V>

The ReadonlySignal to subscribe to

Returns​

V

The current value of the signal

Example​

const signal = new Signal(0);
function MyComponent() {
const value = useSignalValue(signal);
return <div>Value: {value}</div>;
}