reactjs – redux-saga:如何以编程方式为收益创建多个调用/副作用?

前端之家收集整理的这篇文章主要介绍了reactjs – redux-saga:如何以编程方式为收益创建多个调用/副作用?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
使用redux-saga,可以并行执行多个效果
import { call } from 'redux-saga/effects'

// correct,effects will get executed in parallel
const [users,repos]  = yield [
  call(fetch,'/users'),call(fetch,'/repos')
]

我如何以编程方式创建这些“call”-calls?

我想要实现的是:

让我说我有一个不同参数的数组,我想每个参数执行一个服务器请求,但与redux-saga并行:

const parameters = ['abc','def','ghi']

const allMyFetchCalls  = parameters.map( (p) => makeCallRequestWithParameter(p) );

makeCallRequestWithParameter会在yield调用(fetch,param)中创建一个函数调用(或者在redux-saga-speech:一个效果中)调用(fetch,param)

const resultArray = yield allMyFetchCalls;

这是可能的,如果是的话,怎么样?

解决方法

请注意,呼叫效果当时不会调用任何内容.
它只是创建Plain JavaScript Object并返回.所以你想要的并不是那么困难.
import { call } from 'redux-saga/effects'

const params = ['abc','ghi']
const responses  = yield params.map(p => call(fetch,p))

猜你在找的JavaScript相关文章