将多个值传递给redux saga调用
我需要向post请求传递2个值。 我已经写了这样的电话将多个值传递给redux saga调用,redux,redux-saga,Redux,Redux Saga,我需要向post请求传递2个值。 我已经写了这样的电话 const { phoneNumber, code } = params; yield call( apiCall, Generic.loginSms, actions.loginSmsLink(phoneNumber, code) ); 行动就是这样 export const loginSmsLink = crea
const { phoneNumber, code } = params;
yield call(
apiCall,
Generic.loginSms,
actions.loginSmsLink(phoneNumber, code)
);
行动就是这样
export const loginSmsLink = createAction(
ActionTypes.SMS_CODE_LOGIN,
phoneNumber => ({ phoneNumber }),
code => ({ code })
);
请求:
loginSms: apiCall(({phoneNumber, code}) => ({
method: 'POST',
url: '/login',
data: {
loginAuthenticationToken: {
'@type': 'sms',
phoneNumber,
code
}
}
})),
请求仅接受phoneNumber的第一个参数。我认为问题在于您正在将一个对象作为参数传递给函数。如果您的参数要接受多个参数,这应该可以:
loginSms: apiCall((phoneNumber, code) => ({
method: 'POST',
url: '/login',
data: {
loginAuthenticationToken: {
'@type': 'sms',
phoneNumber,
code
}
}
})),
如果您阅读了Redux Saga文档,您会看到调用包含一个函数和一组参数: 呼叫(fn,…args) 您需要在一个数组中传递多个参数