File

src/app/books/books-components/components/books/smart/books.component.ts

Metadata

changeDetection ChangeDetectionStrategy.OnPush
selector books
template
<books-ui [books]="books$ | async"></books-ui>

Index

Properties

Constructor

constructor(store: Store)
Parameters :
Name Type Optional
store Store<any> No

Properties

books$
Type : Observable<Book[]>
import { Component, ChangeDetectionStrategy } from "@angular/core"
import { Observable } from 'rxjs'

import { Store, select } from '@ngrx/store'

import { Book } from './../../../../../book/book-data/models/book.model'
import { selectAllCacheBooks } from './../../../../books-data/selectors/books-cache.selectors'
import { requestBooksHydrate } from './../../../../books-data/actions/books.actions'

@Component({
  selector: 'books',
  template: '<books-ui [books]="books$ | async"></books-ui>',
  changeDetection: ChangeDetectionStrategy.OnPush
})
export class BooksComponent {
  books$: Observable<Book[]>

  constructor(private store: Store<any>) {
    store.dispatch(requestBooksHydrate())

    this.books$ = store.pipe(
      select(selectAllCacheBooks)
    )
  }
}
Legend
Html element
Component
Html element with directive

result-matching ""

    No results matching ""