首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >"map is not a function“with redux-orm 0.9.0

"map is not a function“with redux-orm 0.9.0
EN

Stack Overflow用户
提问于 2017-12-16 01:36:44
回答 1查看 112关注 0票数 3

我正在创建一个简单的示例来学习redux-orm库。我已经设置了我的减速器,如下所示,一切似乎都很好。

代码语言:javascript
复制
const orm = new ORM();
orm.register(Profile, User);
export function reducer(state, {type, payload}) {
  const session = orm.session(state || orm.getEmptyState());
  switch(type) {
    case 'CREATE_USER':
      session.User.create(payload)
      break;

    case 'CREATE_PROFILE':
      session.Profile.create(payload)
      break;
  }
  return session.state;
}

我将按照示例创建一个简单的选择器,该选择器获取数据库中的整个用户列表:

代码语言:javascript
复制
export const getUsers = createSelector(orm, session => {
  return session.User.map(user => {
    return user.ref
  });
});

然而,在使用选择器时,Chrome给了我一个错误:ERROR TypeError: session.User.map is not a function

我是不是遗漏了什么?或者这是一个库的bug?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-12-16 03:48:38

您需要使用toModelArraytoRefArray。与您在示例中使用的代码(获取每个User的引用)等效的代码如下:

代码语言:javascript
复制
return session.User.all().toRefArray()

如果需要做进一步的处理,比如获取关系或仅细化到属性的子集,可以像处理普通数组一样使用toModelArraymap

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/47837287

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档