redux工具包的redux传奇-效果不会运行

redux工具包的redux传奇-效果不会运行,redux,redux-saga,redux-toolkit,Redux,Redux Saga,Redux Toolkit,我已经用@reduxjs/toolkit和redux saga设置了CRA 主要的传奇故事确实流传了下来。然而,打算在takeEvery或fork上运行的子传奇似乎根本不运行 传奇故事: export function* saga() { console.log('main'); //logs fork(function* () { console.log('fork') //doesn't log }); } const sagaMiddleware = createS

我已经用
@reduxjs/toolkit
redux saga
设置了CRA

主要的传奇故事确实流传了下来。然而,打算在
takeEvery
fork
上运行的子传奇似乎根本不运行

传奇故事:

export function* saga() {
  console.log('main'); //logs

  fork(function* () {
    console.log('fork') //doesn't log
  });
}
const sagaMiddleware = createSagaMiddleware();
const store = configureStore({
  reducer: state => {
  },
  middleware: defaultMiddleware => defaultMiddleware().concat(sagaMiddleware)
});

sagaMiddleware.run(saga);
商店:

export function* saga() {
  console.log('main'); //logs

  fork(function* () {
    console.log('fork') //doesn't log
  });
}
const sagaMiddleware = createSagaMiddleware();
const store = configureStore({
  reducer: state => {
  },
  middleware: defaultMiddleware => defaultMiddleware().concat(sagaMiddleware)
});

sagaMiddleware.run(saga);
(只有CRA+Toolkit+redux传奇)


非常确定,要想让他们做任何事情,你需要
产生这两种效果:

export function* saga() {
  console.log('main'); //runs

  yield takeEvery('*', function*() {
    console.log('takeEvery') //doesnt run
  })

  yield fork(function* () {
    console.log('gen') // doesnt run
  });
}

我认为,
yield-takeEvery
可能也会“阻止”这部传奇继续发展到分叉点?不确定这里的传奇语义。

非常确定您需要
产生这两种效果才能让他们做任何事情:

export function* saga() {
  console.log('main'); //runs

  yield takeEvery('*', function*() {
    console.log('takeEvery') //doesnt run
  })

  yield fork(function* () {
    console.log('gen') // doesnt run
  });
}

我认为,
yield-takeEvery
可能也会“阻止”这部传奇继续发展到分叉点?不确定这里的传奇语义。

该死,我忘了。你是对的,
takeEvery
都会阻塞。该死,我忘了。你是对的,
takeEvery
确实会阻塞。