Open runzhq opened 6 years ago
1、take(pattern)用来匹配(等待)指定的action。 其中pattern可以是:*、空、字符串、函数、数组。 2、takeEvery(pattern, saga, ...args)用来当匹配pattern的action出现时,启动相应的每一个saga。 takeEvery是由take和fork共同构建,处理并发的action。 3、takeLatest(pattern, saga, ...args)跟takeEvery的区别就是会自动取消那些之前启动并且执行着的saga任务。 4、put(action) 命令middleware 向 Store 发起一个 action。可以理解为dispatch一个action吗? 该如何理解中间件呢? 暂时想到的一个是:从action到store之间所做的一些控制和处理。
take(pattern)
takeEvery(pattern, saga, ...args)
takeLatest(pattern, saga, ...args)
put(action)
感觉saga中的put可以理解为dispatch一个action,中间件貌似是对reduce中的action进行监听 若涉及异步,就会被saga处理
一些重要的API
1、
take(pattern)
用来匹配(等待)指定的action。 其中pattern可以是:*、空、字符串、函数、数组。 2、takeEvery(pattern, saga, ...args)
用来当匹配pattern的action出现时,启动相应的每一个saga。 takeEvery是由take和fork共同构建,处理并发的action。 3、takeLatest(pattern, saga, ...args)
跟takeEvery的区别就是会自动取消那些之前启动并且执行着的saga任务。 4、put(action)
命令middleware 向 Store 发起一个 action。可以理解为dispatch一个action吗? 该如何理解中间件呢? 暂时想到的一个是:从action到store之间所做的一些控制和处理。