0

I've been surveying several angular2 + webpack + ngrx starter projects for a days.

I've realized several of them are used to use:

Injectable()
export class UsersCommons {
  static BASE_URL = 'http://localhost:3000/users';

  static ACTIONS: IActions = {
    LOAD_ALL_START: 'USERS_LOAD_START',
    LOAD_ALL_SUCCESS: 'USERS_LOAD_SUCCESS',
    LOAD_ALL_FAIL: 'USERS_LOAD_FAIL',
    LOAD_ONE_START: 'USER_LOAD_START',
    LOAD_ONE_SUCCESS: 'USER_LOAD_SUCCESS',
    LOAD_ONE_FAIL: 'USER_LOAD_FAIL',
    UPDATE_START: 'USER_UPDATE_START',
    UPDATE_SUCCESS: 'USER_UPDATE_SUCCESS',
    UPDATE_FAIL: 'USER_UPDATE_FAIL',
    //...
  }
}

I don't quite figure out why each action has a [_START|_SUCCESS|_FAIL]. Could somebody explain me what does this pattern stand for?

Jordi
  • 20,868
  • 39
  • 149
  • 333
  • 2
    Give a look at http://stackoverflow.com/questions/40487872/angular-2-update-global-state-as-a-side-effect-of-updating-a-certain-state/40496998#40496998 – Picci Feb 06 '17 at 21:03

1 Answers1

1

This is just a naming convention. It could allow you to do a regular expression check in logic later on or it might just be useful for readability. You could just as easily add additional states and call them [_START|_PENDING|_ERROR|_SUCCESS|_COMPLETE].

Jason Lutz
  • 91
  • 5