NGRX - 如何使用过滤器从数组中删除项目?

NGRX - How to use filter to delete an item from an array?

我正在尝试从数组中删除一个项目,但是当我执行代码时,它会从状态中删除所有项目,而不是那些没有指定 ID 的项目。

    case REMOVE_STORE:
      return {
        Stores:[...state.Stores.filter( (item) => {
          item.storeId != action.payload
        })],
      };

我可以通过切片和元素在数组中的位置来删除项目,但我想使用 ID 而不是数组中的位置。

您遗漏了 return 语句。将您的代码更改为:

case REMOVE_STORE:
return {
    Stores: [...state.Stores.filter((item) => {
        return item.storeId != action.payload
    })],
};