mobx-keystone

    Class Ref<T>Abstract

    A reference model base type. Use customRef to create a custom ref constructor.

    Type Parameters

    • T extends object

    Hierarchy

    Index

    Constructors

    Properties

    "[fromSnapshotOverrideTypeSymbol]": never
    "[modelIdPropertyNameSymbol]": never
    "[propsTypeSymbol]": { id: MaybeOptionalModelProp<string> }

    Type declaration

    "[toSnapshotOverrideTypeSymbol]": never
    $: { id: string }

    Data part of the model, which is observable and will be serialized in snapshots. Use it if one of the data properties matches one of the model properties/functions.

    Type declaration

    • id: string

      Reference id.

    $modelType: string

    Model type name.

    id: string = ...

    Reference id.

    Accessors

    • get $modelId(): ModelIdPropertyType<TProps, ModelIdPropertyName>

      Model internal id. Can be modified inside a model action. It will return undefined if there's no id prop set.

      Returns ModelIdPropertyType<TProps, ModelIdPropertyName>

    • set $modelId(newId: ModelIdPropertyType<TProps, ModelIdPropertyName>): void

      Parameters

      Returns void

    • get current(): T

      The object this reference points to, or throws if invalid.

      Returns T

    • get isValid(): boolean

      If the reference is currently valid.

      Returns boolean

    • get maybeCurrent(): undefined | T

      The object this reference points to, or undefined if the reference is currently invalid.

      Returns undefined | T

    Methods

    • Ensures back references for this ref are up to date. This only needs to be called if you need to get the most up to date back references while both still inside an action and while the reference is not a child of the same root than the target.

      Returns void

    • Can be overridden to offer a reference id to be used in reference resolution. By default it will use the idProp if available or return undefined otherwise.

      Returns undefined | string

    • Parameters

      • Optionaloptions: { withData?: boolean }

      Returns string

    • Performs a type check over the model instance. For this to work a data type has to be declared as part of the model properties.

      Returns null | TypeCheckError

      A TypeCheckError or null if there is no error.

    MMNEPVFCICPMFPCPTTAAATR