You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

NgRx如何创建无属性Action?解决空对象约束报错

如何创建无属性的Action?

问题场景

遇到如下错误:

Type '{}' does not satisfy the constraint "action creator props cannot be an empty object".

对应的代码:

export const myActions = createActionGroup({
  source: 'My Section',
  events: {
    someAction1: props<{isEnabled: boolean}>(),
    someAction2: props<{}>(),  // 此处引发错误
  },
});

请问如何创建无属性的Action?

解决方案

创建无属性的Action时,不要使用props<{}>,直接使用emptyProps()方法即可,这是专门用于定义无参数Action的官方方式:

export const myActions = createActionGroup({
  source: 'My Section',
  events: {
    someAction1: props<{isEnabled: boolean}>(),
    someAction2: emptyProps(),  // 无属性Action,无错误
  },
});

如果不想额外导入emptyProps,也可以直接传入一个返回空对象的函数,写法如下:

export const myActions = createActionGroup({
  source: 'My Section',
  events: {
    someAction1: props<{isEnabled: boolean}>(),
    someAction2: () => ({}),  // 同样实现无属性Action
  },
});

内容的提问来源于stack exchange,提问作者MageWind

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.14 21:05:53