Skip to content

Instantly share code, notes, and snippets.

@peterbsmyth
Created June 1, 2019 23:32
Show Gist options
  • Select an option

  • Save peterbsmyth/5582a5670b5be498a15dddaec4af8c98 to your computer and use it in GitHub Desktop.

Select an option

Save peterbsmyth/5582a5670b5be498a15dddaec4af8c98 to your computer and use it in GitHub Desktop.

Revisions

  1. Peter B Smith created this gist Jun 1, 2019.
    40 changes: 40 additions & 0 deletions actions.ts
    Original file line number Diff line number Diff line change
    @@ -0,0 +1,40 @@
    import { createAction, props } from '@ngrx/store';

    export const get = createAction(
    '[Job] get'
    );

    export const getComplete = createAction(
    '[Job] getComplete',
    props<{ job: any }>()
    );

    export const getError = createAction(
    '[Job] getError',
    props<{ error: any }>()
    );

    export const saveOneFavorite = createAction(
    '[Job] saveOneFavorite',
    props<{ job: any }>()
    );

    export const saveOneFavoriteComplete = createAction(
    '[Job] saveOneFavoriteComplete',
    props<{ job: any }>()
    );

    export const saveOneFavoriteError = createAction(
    '[Job] saveOneFavoriteError',
    props<{ error: any }>()
    );

    export const select = createAction(
    '[Job] select',
    props<{ id: any }>()
    );

    export const filter = createAction(
    '[Job] filter',
    props<{ filter: any }>()
    );
    29 changes: 29 additions & 0 deletions effects.ts
    Original file line number Diff line number Diff line change
    @@ -0,0 +1,29 @@
    import { Injectable } from '@angular/core';
    import { Actions, ofType, createEffect } from '@ngrx/effects';
    import { mapTo } from 'rxjs/operators';
    import { JobCodeActions } from '../actions';

    @Injectable()
    export class JobCodeEffects {
    get$ = createEffect(() =>
    this.actions$.pipe(
    ofType(JobCodeActions.get),
    mapTo(JobCodeActions.getComplete({
    jobCode: {}
    }))
    )
    );

    saveOneFavorite$ = createEffect(() =>
    this.actions$.pipe(
    ofType(JobCodeActions.saveOneFavorite),
    mapTo(JobCodeActions.saveOneFavoriteComplete({
    jobCode: {}
    }))
    )
    );

    constructor(
    private actions$: Actions
    ) { }
    }