Redux-saga商店将自定义类转换为普通对象

问题描述 投票:0回答:1

我正在尝试使用我的reducer将自定义调用User存储到商店。问题在于,reducer通过将Class的属性替换为Plain对象的属性,将自定义类转换为Plain对象。这意味着当我从商店获取该类时,无法调用任何类方法。

我的用户类有一个方法getGroup,从存储中检索用户后无法调用。

所以一个例子是:

class User {
   constructor(data){
       this.data = data;
       this.id = data.id;
   }

   getGroup() {
       return this.data.group;
   }
}

将转换为:

{
    data: {
        id: 1, 
        group: "Some group"
    },
    id: 1
}

我正在使用connect库中的react-redux将存储状态映射到React道具。

任何想法我都可以:

  • 当redux saga从其存储中获取属性时,转换为正确的User类(如修改的getter)
  • 允许减速器存储我的User
reactjs redux react-redux redux-saga
1个回答
0
投票

避免将不可序列化的值(如Promises,Symbols,Maps / Set,函数或类实例放入Redux存储状态或调度的动作中)>]。这样可以确保通过Redux DevTools进行调试等功能将按预期工作。它还确保用户界面将按预期更新。
© www.soinside.com 2019 - 2024. All rights reserved.