سلام استاد معصومی,
من در پروژه ری اکتی خودم می خوام action و reducer برای وقتی که کاربر login میشود و logout میشود بنویسم با syntax قدیم انجام دادم کار میکند ولی با جدیدی کار نمیکند. هر دو رو اینجا میزارم لطفا بگید که اشکال کار کجاست؟ ممنون از شما
new version :
import {createSlice} from '@reduxjs/toolkit';
export const userSlice = createSlice({
name: "user",
initialState: {},
reducers:{
addUser: (state, action) => {
state.user = action.payload
},
clearUse: (state) => {
state.user = {}
}
},
});
export const { addUser, clearUser } = userSlice.actions
export default userSlice.reducer old version:
actions:
export const addUser = user => {
return async dispatch => {
await dispatch({ type: "SET_USER", payload: user });
};
};
export const clearUser = () => {
return async dispatch => {
await dispatch({ type: "CLEAR_USER", payload: {} });
};
};
reducer:
export const userReducer = (state = {}, action) => {
switch (action.type) {
case "SET_USER":
return { ...action.payload };
case "CLEAR_USER":
return { ...action.payload };
default:
return state;
}
};
در syntax جدید action و reducer فکر میکنم با هم نوشته میشوند.
سلام ریداکس های ورژن جدید رو اصلا کار نکردم چون نیازی بهش نداشتم توی پروژه
بهتره از کسی بپرسید که کار کرده