Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat(ngrx): properly scaffold Load/Loaded/LoadError actions for each feature #472

Closed
ThomasBurleson opened this issue May 10, 2018 · 1 comment · Fixed by #474
Closed
Assignees

Comments

@ThomasBurleson
Copy link
Contributor

ThomasBurleson commented May 10, 2018

Recent enhancements to the ngrx/platform schematics creates more specific feature actions and effects classes.

As such, in the Nx ngrx schematics, enhancements should be insure that the following actions are scaffolded:

  • For each ngrx name feature, the following three (3) actions should be prepared:
      export type <%= classify(name) %>Actions = 
             Load<%= classify(name) %>s     | 
             <%= classify(name) %>sLoaded | 
             <%= classify(name) %>LoadError;
@ThomasBurleson ThomasBurleson self-assigned this May 10, 2018
@ThomasBurleson ThomasBurleson added this to the 6.2.0 milestone Jul 13, 2018
@ThomasBurleson ThomasBurleson changed the title feat(ngrx): check if ngrx schematics generated Load/Loaded actions feat(ngrx): properly scaffold Load/Loaded/LoadError actions for each feature Jul 13, 2018
vsavkin pushed a commit that referenced this issue Jul 22, 2018
@nrwl/schematics no longer uses the @ngrx/schematics to generate NgRx feature files.
*  `ngrx/files/__directory__` templates are used
*  Templates replicate the simple outputs generated from @ngrx/schematics:feature
*  Templates add significant Nx enhancements.

The following standard files will be scaffolded:
* `<feature>.actions.ts`
* `<feature>.effects.ts` + `<feature>.effects.spec.ts`
* `<feature>.reducer.ts` + `<feature>.reducer.spec.ts`

The following new files will also be scaffolded:
* `<feature>.selectors.ts` +  `<feature>.selectors.spec.ts`

Changes include:

* Change the action/enums to generate a trio of enums for each *feature*: `Load<Feature>`, `<Feature>Loaded`, and `<Feature>LoadError`
* Add code generators for `<feature>.selectors.ts`
* Add code generators for unit and integration testing `*.spec.ts` files
* Update the public barrel [`index.ts`] when adding ngrx to a library
* Use `StoreModule.forFeature()` when adding ngrx feature (without using the `--root` option)
* Use the Effect to respond tp `load<Feature>$` and dispatch `<Feature>Loaded` or `<Feature>LoadError`
* Update the Action to export `<feature>Actions` map of all action classes
* fix `ng-add.test.ts` tests for latest Angular CLI scaffolding
* fix `application.spec.ts` expect fails

Fixes #472,  Fixes #618,  Fixes #317,  Fixes #561, Refs #380.
@github-actions
Copy link

This issue has been closed for more than 30 days. If this issue is still occuring, please open a new issue with more recent context.

@github-actions github-actions bot locked as resolved and limited conversation to collaborators Mar 25, 2023
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

Successfully merging a pull request may close this issue.

1 participant