View.Layer
Extends: IObservable<View.Layer>
Properties
Measurements
Tag
A subset of the Tag namespace's functionality to manipulate Tags on this layer.
Provides access to Tag mutations including Tag.add to add directly to a layer.
Does not include observables or enums.
Accessors
toggled
Whether this Layer toggled on or off. If toggled off, this Layer's objects are hidden.
Methods
subscribe
Subscribe to changes on this object.
When this observable detects a change, the observer provided will be called with the data associated with this observable.
// Example: subscribe to changes in the app state
sdk.App.state.subscribe((appState) => {
console.log(`App state changed to: ${appState.phase}`);
});
or:
sdk.App.state.subscribe({
onChanged(appState) {
console.log(`App state changed to: ${appState.phase}`);
}
});
| Parameter | Type |
|---|---|
| observer | IObserver<View.Layer> | ObserverCallback<View.Layer> an observer or callback to receive change notifications |
Returns: ISubscription
A subscription that can be used to remove the subscribed observer.
toggle
Toggle this Layer's state to active.
| Parameter | Type |
|---|---|
| active? | boolean Whether this Layer should be toggled on or off. If active is undefined, the state is flipped. |
Returns: Promise<void>
waitUntil
Wait for a specific condition on this object to be met.
When this observable detects a change, the condition provided will be called. When the condition returns true, the returned Promise will be resolved.
// Example: pause execution of code until the app state is in the "playing" phase
await sdk.App.state.waitUntil(
appState => appState.phase == sdk.App.Phase.PLAYING
);
or:
await sdk.App.state.waitUntil({
waitUntil(appState) {
return appState.phase == sdk.App.Phase.PLAYING;
}
});
| Parameter | Type |
|---|---|
| condition | ICondition<View.Layer> | ConditionCallback<View.Layer> a condition or callback that returns true when the desired state is met |
Returns: Promise<View.Layer>
A promise that is resolved when condition returns true.