问题描述
import { createSelector } from 'reselect';
const selectMembers = state => state.membersData;
const makeSelectLessonSets = createSelector(
selectMembers,substate => substate.get('myData').toJS()
);
问题是有时 myData
还没有定义,所以 substate.get('myData')
不会得到任何东西。由于我尝试对其调用 toJS()
,因此它显示错误:undefined is not an object
。
但我不知道如何在调用 substate.get('myData')
之前检查 createSelector
是否在 toJS()
中返回了一个有效对象。
你能帮忙吗。
解决方法
我在点之前添加了 ?
这不会抛出错误
import { createSelector } from 'reselect';
const selectMembers = state => state.membersData;
const makeSelectLessonSets = createSelector(
selectMembers,substate => substate?.get('myData')?.toJS()
);