Delete todo
[Début de la branche step-3]
Même procédé que pour la création, sauf que l'on passera l'id de la todo à supprimer dans l'action.
store/actions/todo-list.action.ts
// ... autres
export namespace TodoListModule {
export enum ActionTypes {
// [...]
DELETE_TODO = '[todoList] Delete Todo',
}
// [...]
export class DeleteTodo {
readonly type = ActionTypes.DELETE_TODO;
constructor(public payload: number) {}
}
export type Actions = InitTodos
| CreateTodo
| DeleteTodo;
}Se servir de filter pour renvoyer un nouveau tableau sans notre todo :
/store/reducers/todo-list.reducer.ts
Ajoutons la fonction de suppression :
/app.component.ts
Gérer les ids
Jusqu'à présent, à chaque fois que l'on ajoute une todo, on lui donnait un id "8" par défaut. Nous allons maintenant dynamiser l'attribution d'id.
Deux possibilités :
-1 Calculer la longueur du tableau de todo. -2 Utiliser des id uniques via un générateur comme uuid.
Première option :
/app.component.ts
tap : invoque une action pour chaque élément de la séquence observable.
Suppression terminée.
Last updated
Was this helpful?