我正在尝试将full_name
设置为我的初始状态,但是我不确定。当我将数据发送到我的props.userDetailsFetchRequest(id, data);
时,我无法检查这一点,仅当数据加载完成时,如何设置此初始状态。
const UserDetails = props => {
const classes = useStyles();
const { userDetailsLoading } = props;
const { full_name } = props.userDetails;
console.log('loading:', userDetailsLoading)
console.log('full name:', full_name)
const [name, setName] = useState(full name); <-------- I want this inicialize with
michele sena riveira
function handleSubmit(e) {
e.preventDefault();
const { id } = props.userDetails;
const data = {
"full_name": name,
}
props.userDetailsFetchRequest(id, data); <--- I'm sending this request to my saga
and I'm getting full_name as undefined.
}
佐贺
function* userDetailsEditFetchRequest({ id, data }) {
console.log("full_name in saga:",data)
}
您将为此使用useEffect
:
useEffect(() => {
setName(full_name)
},[full_name]
现在,每当full_name更改时,效果将使用道具的值更新您的状态值。
但是最好尽可能直接使用道具,以消除任何可能的差异