SimonZ89
SimonZ89

Reputation: 167

Why redux state might be undefined?

In redux I want to make a selector getRequestStatus:

export const getRequestStatus = (state) => state.books.request

For unknown reason, it doesn't work in component when I use mapStateToProps and says state.books is undefined.

const mapStateToProps = state => ({ 
  getBook: (bookId) => getBook(state,bookId),
  getRequestStatus: (state)=>getRequestStatus(state),//doesn't work, undefined state.books
})

Suprisingly it works fine when write in component:

   const request = useSelector((state)=>getRequestStatus(state))//works

When I don't use useSelector I try to call this from props:

 const request = getRequestStatus()//doesn't work, cant access to undefined state.books
//normally it should because state is passed in mapStateToProps right?

I suppose that this is because of no state argument. What Do you think?

Upvotes: 0

Views: 153

Answers (1)

dave
dave

Reputation: 64707

getRequestStatus: (state)=>getRequestStatus(state) should just be getRequestStatus: ()=>getRequestStatus(state)

Upvotes: 1

Related Questions