Javascript 如何在其他操作之后立即发送操作?
我在用react native搭配redux传奇 如果我按下onLike按钮,我想发送LIKE\u POST\u请求,并在获得LIKE\u POST\u成功后立即发送 我想发出装货请求 这是我的密码 (Explain.js)Javascript 如何在其他操作之后立即发送操作?,javascript,node.js,reactjs,react-native,redux-saga,Javascript,Node.js,Reactjs,React Native,Redux Saga,我在用react native搭配redux传奇 如果我按下onLike按钮,我想发送LIKE\u POST\u请求,并在获得LIKE\u POST\u成功后立即发送 我想发出装货请求 这是我的密码 (Explain.js) const Explain=({navigation,route})=>{ const dispatch=usedpatch(); const{me}=useSelector((state)=>state.user); const{singlePost}=useSelect
const Explain=({navigation,route})=>{
const dispatch=usedpatch();
const{me}=useSelector((state)=>state.user);
const{singlePost}=useSelector((state)=>state.post);
const onLike=()=>{
退货({
类型:如发布请求,
数据:singlePost?.id,
}),
派遣({
类型:加载后请求,
数据:singlePost.id
})
}
const onUnlike=()=>{
退货({
类型:与_POST _请求不同,
数据:singlePost?.id,
}),
派遣({
类型:加载后请求,
数据:singlePost.id
})
}
const liked=singlePost?.Likers.find((v)=>v.id==me?.id);
返回(
안녕
{喜欢
?
:
}
좋아요{' '}
{singlePost?.Likers.length}
);
};
导出默认解释;
但当我按下onLike调度动作的过程不规则
如何修复我的代码
这就是我想要的调度行动的过程
如果您希望两个操作一个接一个地被调用,那么您首先必须等待承诺解决/拒绝第一个操作。 我的建议是创建一个动作,在内部同步调用另外两个动作。
或者,在API调用解决后,您可以从内部调用LOAD\u POST\u请求操作,就像\u POST\u请求一样。如果您希望两个操作一个接一个地调用,那么您首先必须等待承诺解决/拒绝第一个操作。 我的建议是创建一个动作,在内部同步调用另外两个动作。 或者,在API调用解决后,您可以从内部调用LOAD_POST_请求操作,就像_POST_请求一样
const Explain = ({navigation,route}) => {
const dispatch = useDispatch();
const {me} = useSelector((state) =>state.user);
const {singlePost} = useSelector((state) => state.post);
const onLike = () => {
return dispatch({
type: LIKE_POST_REQUEST,
data: singlePost?.id,
}),
dispatch({
type: LOAD_POST_REQUEST,
data:singlePost.id
})
}
const onUnlike = () => {
return dispatch({
type: UNLIKE_POST_REQUEST,
data: singlePost?.id,
}),
dispatch({
type: LOAD_POST_REQUEST,
data:singlePost.id
})
}
const liked = singlePost?.Likers.find((v) => v.id === me?.id);
return (
<Container>
<Hi>
안녕
</Hi>
{ liked
?
<MenuContainer onPress={onUnlike} >
<IconButtonU iconName="favorite"
style={{width:23, height:23}}
source={require('../../Assets/Images/Tabs/heart.png')}
/>
</MenuContainer>
:
<MenuContainer onPress={onLike} >
<IconButtonU iconName="favorite"
source={require('../../Assets/Images/Tabs/ic_favorite_outline.png')}
/>
</MenuContainer>
}
<LikeNumber>
좋아요{' '}
{singlePost?.Likers.length }
</LikeNumber>
</Container>
);
};
export default Explain;