Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/reactjs/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/flutter/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Reactjs 未设置来自redux状态的数据_Reactjs_Typescript_Redux_Redux Toolkit - Fatal编程技术网

Reactjs 未设置来自redux状态的数据

Reactjs 未设置来自redux状态的数据,reactjs,typescript,redux,redux-toolkit,Reactjs,Typescript,Redux,Redux Toolkit,我在thunk内部进行了API调用,它工作正常,reducer也给了我所需的状态,即使我使用选择器获取详细信息,但当我试图在另一个状态(myData)内设置数据时,它表示未定义 //减速器 import { createAsyncThunk, createSlice } from '@reduxjs/toolkit'; interface TData { name: string; gender: string; } // my thunk export const getMyDa

我在thunk内部进行了API调用,它工作正常,reducer也给了我所需的状态,即使我使用选择器获取详细信息,但当我试图在另一个状态(myData)内设置数据时,它表示未定义

//减速器

import { createAsyncThunk, createSlice } from '@reduxjs/toolkit';

interface TData {
  name: string;
  gender: string;
}

// my thunk

export const getMyData = createAsyncThunk('someUrl', async () => {
  const { success } = await SomeApiCall();
  return success?.data as TData;
});

const mySliceInitalData: TData = { data: {} } as TData;

const mySlice = createSlice({
  name: 'profile',
  initialState: {
    loading: false,
    mySliceData: mySliceInitalData,
  },

  reducers: {},
  extraReducers: (builder) => {
    builder.addCase(getMyData.pending, (state) => {
      state.loading = true;
    });
    builder.addCase(getMyData.fulfilled, (state, action) => {
      console.log('action ', action.payload);
      state.privacyData = action.payload;
      state.loading = false;
    });
    builder.addCase(getMyData.rejected, (state) => {
      state.loading = false;
    });
  },
});

//选择器

const myDetailsSelector = (state: RootState) => state.Profile.mySliceData
//mydata.tsx,用户界面页面


// dispatcher

 const dispatch = useAppDispatch()

// use app selector

const details = useAppSelector(myDetailsSelector , shallowEqual)


// state

const [myData,setMyData] = useState<TData>();

const getDetails = () => {
  
 const someData : TData = 
{
  name:details?.name,
  gender:details?.gender
}

setMyData(someData)

}

  useEffect(() => {
     dispatch(getMyData())
    getDetails();
   }, [dispatch,details])


<div>
{myData?.name} // it says undefined here
</div>





//调度员
const dispatch=useAppDispatch()
//使用应用程序选择器
const details=useAppSelector(myDetailsSelector,shallowEqual)
//陈述
const[myData,setMyData]=useState();
const getDetails=()=>{
常量someData:TData=
{
姓名:详情?姓名,
性别:细节?性别
}
setMyData(someData)
}
useffect(()=>{
调度(getMyData())
getDetails();
},[调度,详细信息])
{myData?.name}//这里说未定义

该州没有
privacyData
属性,请更正您的代码。