Строгий менеджер состояний для приложений на javascript
selectAll(options: { asObject: boolean; filterBy?: Function; limitTo?: number })
Выберет всю коллекцию сущностей хранилища:
this.todos$ = this.query.selectAll();
this.todos$ = this.query.selectAll({
asObject: true
});
this.todos$ = this.query.selectAll({
filterBy: entity => entity.completed === true
});
/** This will perform AND logic */
this.todos$ = this.query.selectAll({
filterBy: [
(entity, index) => index % 2 === 0,
entity => entity.completed === true
]
});
this.todos$ = this.query.selectAll({
limitTo: 5
});
selectMany(ids: ID[], options: { asObject: boolean, filterUndefined = true })
Выберет несколько объектов из хранилища:
this.todos$ = this.query.selectMany([1, 4, 6]);
this.todos$ = this.query.selectMany([1, 4 ,6], {
filterUndefined: false
});
this.todos$ = this.query.selectMany([1, 4 ,6], {
asObject: true
});
selectEntity(id: ID, project?: ( entity: E ) => R )
Выберет объект или часть объекта:
this.todo$ = this.query.selectEntity(1);
this.todo$ = this.query.selectEntity(1, entity => entity.title);
selectFirst(project?: (entity: E) => R)
Выберет первую сущность из хранилища:
this.firstTodo$ = this.query.selectFirst();
this.firstTodoTitle$ = this.query.selectFirst(todo => todo.title);
selectLast(project?: (entity: E) => R)
Выберет последний объект из хранилища:
this.lastTodo$ = this.query.selectLast();
this.lastTodoTitle$ = this.query.selectLast(todo => todo.title);
selectCount(predicate?: ( entity: E ) => boolean )
Выберет длину коллекции сущностей хранилища:
this.count$ = this.query.selectCount();
this.completedCount$ = this.query.selectCount(entity => entity.complete);
selectLoading()
Выберет состояние загрузки хранилища:
this.loading$ = this.query.selectLoading();
selectError()
Выберет состояние ошибки хранилища:
this.error$ = this.query.selectError();