UserPanel.js
//import 부분
import { useSelector } from "react-redux";
import { auth } from '../../../firebase';
//user cureentUser 부분
const user = useSelector(state=>state.user.currentUser);
//로그아웃 버튼 클릭 시에 동작할 버튼
const handleLogout = () => {
auth.signOut();
}
types
export const CLEAR_USER = "clear_user";
user_action
import {
SET_USER,
CLEAR_USER
}from './types'
export function setUser(user){
return {
type: SET_USER,
payload: user
}
}
export function clearUser(){
return {
type: CLEAR_USER,
}
}
app.js
→ clearUser 로 현재 user 값 삭제
user_reducer.js
import { SET_USER, CLEAR_USER } from "../actions/types";
const initialUserState = {
currentUser: null,
isLoading: true,
};
export default function (state = initialUserState, action) {
switch (action.type) {
case SET_USER:
return {
...state,
currentUser: action.payload,
isLoading: false,
};
case CLEAR_USER:
return {
...state,
currentUser: null,
isLoading: false,
};
default:
return state;
}
}