Dva中effects里的Generators函数为什么不需调用next方法?

app.model({
  namespace: 'todos',
  effects: {
    *addRemote({ payload: todo }, { put, call }) {
      yield call(addTodo, todo);
      yield put({ type: 'add', payload: todo });
    },
  },
});

例如这个典型的dva effect,addRemote是个Generator函数,我记得使用Generator函数是构造函数,要先实例化再调用next方法执行,这里为什么不需要实例化成一个对象并且调用next方法呢?不实例化不调用next方法怎么一步步执行下去呢?

阅读 4.1k
1 个回答

redux-saga帮你做了。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题