Comments (2)
That does, thanks a lot!
from ngrx-entity-relationship.
Hi @ben-hastings,
thanks for the question.
Your investigation is right. Every selector requires a parameter which provides an id or an array of them.
The idea behind this is that a cache can contain a union of 2 lists.
For example, public projects and my projects. Both of them are cached under projects, but we wouldn't want to display someone's public project in my projects.
Nevertheless, it doesn't stop us from providing a selector of all ids, because root selectors accept as the parameter not only ids, but a selector which returns them.
Therefore we need a selector which gets all ids.
const allUserIds = createSelector(selectCompanyState, state => state.ids);
And later in code, we can select all users like that.
const allUsers$ = this.store.select(selectUsers, allUserIds);
Profit.
If you still want to have a single selector without using parameters, then you could follow this guide: https://ngrx-entity-relationship.sudo.eu/extra/usage-with-createselector, and do something like that:
export const selectAllUsers = createSelector(
// selecting the whole store
s => s,
// selecting ids
allUserIds,
// selecting all users with desired relationships
selectUsers,
);
store.select(selectAllUsers).subscribe(users => {
// profit
});
I hope this helps, feel free to ask any further questions.
from ngrx-entity-relationship.
Related Issues (20)
- Accept an id selector as a param of a relationship selector. HOT 1
- Select filtered relations HOT 5
- Add the transform feature to related selectors HOT 1
- ngrxEntityRelationshipReducer with @ngrx/data has unexpected behavior
- reduceGraph doesn't update collection in store HOT 3
- Handling missing entry in related entity state
- "real usage example" links don't work. HOT 2
- many to many? HOT 7
- Load entities with @ngrx/data requesting graphql server HOT 4
- [FEATURE] suggestions for gqlFelds HOT 4
- Action Required: Fix Renovate Configuration HOT 1
- Depreceted NGRX selectors with props HOT 5
- local cache from GraphQL based on object type as a root key
- NGRX-Entity-Relationship Graph do not receive the selector HOT 1
- populate ids automatically on graphql reduce
- Use root selector factories for rel factories
- gqlIgnore
- Dependency Dashboard
- how to configure ngrxEntityRelationshipReducer HOT 15
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from ngrx-entity-relationship.