プロパティ 'user' は型 '{ userReducer: InitialUserState; }' に存在しません
型を定義しまして、いざuseSelectorの型付きを使用したら標題のエラーが出ました
なんで?
store.tsもsliceも型定義のTypes.tsも間違ってないのになぜなんだー
ということで、chatGPTさんに聞いてみることにしました
const user = useAppSelector((state) => state.userReducer);
そうか、わかった これはstore.tsで書いたリデューサーを呼んでるんだ
//store.ts
export const store = configureStore({
reducer: {userReducer},
});
上のように書いた場合は、
const user = useAppSelector((state) => state.userReducer);としなければならなくて、下記のように書けば複数リデューサーを定義できるし、
const user = useAppSelector((state) => state.user);とできる
//store.ts
export const store = configureStore({
reducer: {
user: userReducer,
},
});
userの値を確認してみると問題なく値が入っていてOKかと思うんだけど、
userがnullだった場合の挙動がおかしい、nullにならん
なんで?
//App.tsx
{user.user ? (
<>
<App />
</>
) : (
<>
<Login />
</>
)}
最初はRecoilがいいと思ってたけど、慣れればReduxもいいもんだ
今度からこのエラー出てもこれで大丈夫🙆
※最後に自分事
noteではなくて、自分のブログサイトが急に謎のdeployエラーになり、更新できなくなりました😭なんでだろー