StateRegistry | @uirouter/core
Options
All
  • Public
  • Public/Protected
  • All
Menu

A registry for all of the application's StateDeclarations

This API is found at router.stateRegistry (UIRouter.stateRegistry)

Hierarchy

  • StateRegistry

Index

Methods

decorator

  • Registers a BuilderFunction for a specific StateObject property (e.g., parent, url, or path). More than one BuilderFunction can be registered for a given property.

    The BuilderFunction(s) will be used to define the property on any subsequently built StateObject objects.

    Parameters

    • property: string

      The name of the State property being registered for.

    • builderFunction: BuilderFunction

      The BuilderFunction which will be used to build the State property

    Returns Function

    a function which deregisters the BuilderFunction

deregister

  • Removes a state from the registry

    This removes a state from the registry. If the state has children, they are are also removed from the registry.

    Parameters

    • stateOrName: StateOrName

      the state's name or object representation

    Returns StateObject[]

    a list of removed states

get

  • Gets all registered states

    Calling this method with no arguments will return a list of all the states that are currently registered. Note: this does not return states that are queued but not yet registered.

    Returns StateDeclaration[]

    a list of StateDeclarations

  • Gets a registered state

    Given a state or a name, finds and returns the StateDeclaration from the registry. Note: this does not return states that are queued but not yet registered.

    Parameters

    • stateOrName: StateOrName

      either the name of a state, or a state object.

    • Optional base: StateOrName

      the base state to use when stateOrName is relative.

    Returns StateDeclaration

    a registered StateDeclaration that matched the stateOrName, or null if the state isn't registered.

onStatesChanged

  • Listen for a State Registry events

    Adds a callback that is invoked when states are registered or deregistered with the StateRegistry.

    Example:

    let allStates = registry.get();
    
    // Later, invoke deregisterFn() to remove the listener
    let deregisterFn = registry.onStatesChanged((event, states) => {
      switch(event) {
        case: 'registered':
          states.forEach(state => allStates.push(state));
          break;
        case: 'deregistered':
          states.forEach(state => {
            let idx = allStates.indexOf(state);
            if (idx !== -1) allStates.splice(idx, 1);
          });
          break;
      }
    });

    Parameters

    Returns () => void

    a function that deregisters the listener

      • (): void
      • Returns void

register

  • Adds a state to the registry

    Registers a StateDeclaration or queues it for registration.

    Note: a state will be queued if the state's parent isn't yet registered.

    Parameters

    Returns StateObject

    the internal StateObject object. If the state was successfully registered, then the object is fully built (See: StateBuilder). If the state was only queued, then the object is not fully built.

root

Generated using TypeDoc