initialize Method
Initializes the store and all of its items, preparing it for use. Optionally, a beforeInit
callback function can be provided, which will be executed before the store is initialized
@param beforeInit?: (store: this) => void
An optional callback function that runs before the store is initialized
@returns this
The current instance of the store, allowing for method chaining
API
initialize(beforeInit?: (store: this) => void): this;
Example
import {Injectable} from '@angular/core';
import {signalState, NgStore} from '@bitfiber/ng/rx';
@Injectable()
class ProductsStore extends NgStore {
products = signalState<any[]>();
#ready = this.markAsReady();
}
import {Component, inject} from '@angular/core';
@Component({
selector: 'bf-products',
providers: [ProductsStore],
})
export class ProductsComponent {
readonly store = inject(ProductsStore)
// Initializes the store
.initialize();
}
import {Component, inject} from '@angular/core';
@Component({
selector: 'bf-products',
providers: [ProductsStore],
})
export class ProductsComponent {
readonly store = inject(ProductsStore)
// Executes the provided callback and then initializes the store
.initialize(({products}) => {
products.tap(data => console.log(data));
});
}