@elemental/common / Function

asSignal

Generic types:T

Convert a value or a signal to a signal. It's useful to use when you don't know if the value is a signal or a value and you want to use it always as a signal.

Presentation

function asSignal(value: T | Signal<T>): Signal<T>;

Returns

Signal<T> -

A signal that emits the value or signal.

Parameters

NameTypeDescription
value
T | Signal<T>

@param value - The value or signal to convert.

Overloads

Overload #1

Convert a value or a signal to a signal. It's useful to use when you don't know if the value is a signal or a value and you want to use it always as a signal.

Presentation
asSignal(value: T | Signal<T>): Signal<T>;
Parameters
NameTypeDescription
value
T | Signal<T>

@param value - The value or signal to convert.

Returns
Signal<T> -

A signal that emits the value or signal.

Overload #2

Convert a value or a signal to a signal. It's useful to use when you don't know if the value is a signal or a value and you want to use it always as a signal.

Presentation
asSignal(value: T | Signal<T>, defaultValue: K, options?: { strict: boolean; } | undefined): Signal<K | NonNullable<T>>;
Parameters
NameTypeDescription
value
T | Signal<T>

@param value - The value or signal to convert.

defaultValue
K

@param defaultValue - The default value to use

options
{ strict: boolean; } | undefined

@param options

  • strict: Indicate when use the defaultValue instead of value. Use false if you want apply a falsy value check instead of nullish coleascing check. Default is true.
Returns
Signal<K | NonNullable<T>> -

A signal that emits the value or signal.