将多个值传递给redux saga调用

将多个值传递给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

我需要向post请求传递2个值。 我已经写了这样的电话

       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)

您需要在一个数组中传递多个参数