在NgRx中,createAction函数是用于创建一个action的工厂函数。props函数是createAction的一个参数,用于定义action的payload。
在props函数中使用泛型类型,可以为action的payload指定类型。具体使用方法如下:
import { createAction, props } from '@ngrx/store';
interface MyPayload {
id: number;
name: string;
}
export const myAction = createAction(
'[My Feature] My Action',
props<MyPayload>()
);
import { Store } from '@ngrx/store';
import { myAction } from './my-feature.actions';
@Component({
// ...
})
export class MyComponent {
constructor(private store: Store) {}
onButtonClick() {
const payload: MyPayload = {
id: 1,
name: 'example'
};
this.store.dispatch(myAction(payload));
}
}
这样,我们就可以在NgRx中使用泛型类型来定义action的payload,并在组件中使用createAction函数创建带有指定payload类型的action。
领取专属 10元无门槛券
手把手带您无忧上云