0.0.0-5e0ea0e4b83ce83371f3a0782fe9ac4c20ad3823 • Published 5 years ago
@classi/ngrx-extensions v0.0.0-5e0ea0e4b83ce83371f3a0782fe9ac4c20ad3823
ngrx-extensions
A set of utilities for NgRx family.
Features
@ngrx/storecreateFeatureStoreSelector()
Install
yarn add @classi/ngrx-extensionsAPIs
store createFeatureSlice()
Creates a feature Slice.
The returned Slice object has additional properties: select and initialState.
select method is the same to returned function by createFeatureStoreSelector.
See details in counter-slice.ts
// counter-slice.ts
import { createFeatureSlice } from '@classi/ngrx-extensions';
export type State = {
count: number;
};
const initialState: State = {
count: 0,
};
export default createFeatureSlice({
name: 'counter',
initialState,
reducers: {
increment: (state) => ({ count: state.count + 1 }),
reset: () => ({ count: 0 }),
},
});import { Store } from '@ngrx/store';
import * as counterSlice from './counter-slice';
@Component({})
export class SomeComponent {
constructor(private readonly store: Store<{}>) {}
// Retrieve a scoped state from the store
readonly count$ = counterSlice.select(this.store, (state) => state.count);
}store createFeatureStoreSelector()
See details in counter-store.ts
// counter-store.ts
export default function reducer(state: State, action: typeof actionsUnion) {
return _reducer(state, action);
}
export const featureName = 'counter';
export const select = createFeatureStoreSelector<State>(featureName);import { Store } from '@ngrx/store';
import * as counterStore from './counter-store';
@Component({})
export class SomeComponent {
constructor(private readonly store: Store<{}>) {}
// Retrieve a scoped state from the feature store
readonly count$ = counterStore.select(this.store, (state) => state.count);
}3.0.0-next.1
4 years ago
3.0.0
4 years ago
2.0.0-release-test.1
5 years ago
2.0.0
5 years ago
1.2.0
5 years ago
1.1.0
5 years ago
1.0.0
5 years ago