Javascript 当将redux saga与react一起使用时,sagas.js中的状态是如何提取的

Javascript 当将redux saga与react一起使用时,sagas.js中的状态是如何提取的,javascript,reactjs,redux,redux-saga,Javascript,Reactjs,Redux,Redux Saga,我正在阅读一个涉及redux传奇的代码库。我刚开始阅读redux传奇,我看到saga.js中有很多实例,其中状态已经被删除 function* fetchxyz({ Id }) { try { const authToken = yield select(state => state.auth.authToken); const data = yield call( getxyz1, authToken, Id );

我正在阅读一个涉及redux传奇的代码库。我刚开始阅读redux传奇,我看到saga.js中有很多实例,其中状态已经被删除

function* fetchxyz({ Id }) {
  try {
    const authToken = yield select(state => state.auth.authToken);
    const data = yield call(
      getxyz1,
      authToken,
      Id
    );
    yield put({
      type: FETCH_XYZ_SUCCESS,
      response:data
    });


}

对于这个状态是如何在saga.js中被拉出来的,我感到有点困惑。我强烈地感觉到我在某些地方缺乏一些理解,因为我不明白saga.js是如何将状态拉出来的。

Redux saga是一个Redux中间件。每个redux中间件都可以通过getState函数访问redux状态

Redux文档:

Redux传奇用法:

传奇是生成器,redux传奇库在其上迭代,然后处理各个产生的效果。要访问redux saga中的状态,可以使用示例中的选择效果

所以redux saga所做的就是调用提供的选择器函数,并将getState函数的返回值作为其参数

通过将返回值作为参数传递给迭代器上的下一个函数,可以将生成的表达式计算为选择器函数的返回值。这只是正常的生成器行为:

那么你是在问如何工作?