2017-05-19 1 views
0

J'utilise angular 4 avec les effets ngrx-store et ngrx. J'ai un formulaire simple pour charger l'information d'utilisateur et l'a fonctionné avec des effets qui ensuite expédient une action Load_User_success pour mettre à jour le magasin.Remplissez les informations de la liste déroulante avec ngrx-store/efffects

J'ai une question. Quelle est la meilleure façon de charger les informations pour remplir les listes déroulantes que le formulaire a et en même temps charger les informations utilisateur en utilisant ngrx?

Répondre

2

Créez une observable dans votre composant et définissez-la comme une sélection dans le magasin.

users$ = store.select(state => state.users); 

Ajouter la définition ci-dessous pour le composant

@Component({changeDetection: ChangeDetectionStrategy.OnPush})

Ensuite, utilisez un tuyau async dans votre modèle pour gérer l'abonnement avec quelque chose comme:

<div *ngIf="users$ | async"> 
<select> 
    <option *ngFor="user of (users$ | async)">{{user.name}}</option> 
    </select> 
    </div>