我在我的Web应用程序中使用redux-saga。
我正在使用yield put和yield函数来调度动作。
yield actioncreatorname(parameters)
yield put(actioncreatorname(parameter))
请告诉我以上两个声明之间的区别。
答案 0 :(得分:0)
Redux传奇的主要优势之一是它具有declarative effects(例如put
效果)。意味着每个效果都包含一些中间件要解释的信息,并且可以对这些信息进行测试和断言以匹配我们期望发生的事情。
这些声明性调用的优点是,我们可以通过遍历Generator并对连续产生的值进行deepEqual测试来测试Saga中的所有逻辑。这是真正的好处,因为您复杂的异步操作不再是黑匣子,而且无论它多么复杂,您都可以详细测试其操作逻辑。
总而言之,您可以直接使用操作,而不用put
对其进行命名。但是,您将无法从稍后进行测试的舒适性中受益。