作为TypeScript和redux-thunk用户,我很好奇redux-saga提供的好处.我想试一试,但我担心的是call
功能和类型安全的明显损失.
如果我这样做:
function* invalidateReddit(): SagaIterator { while (true) { const {reddit} = yield take(actions.INVALIDATE_REDDIT) yield call( fetchPosts, reddit ) }
编译器将无法检查调用fetchPosts
.所以如果我改变签名不包括参数......
function fetchPosts() { // anything here... }
该invalidateReddit
功能,这就要看fetchPosts
,应编译失败,但它不会因为call
评估我的代码我.在不牺牲类型安全性的情况下,是否存在使用此模式的既定模式?
更新:https : //github.com/redux-saga/redux-saga/pull/740上的公关似乎试图解决这个问题.我将保持开放,直到可以通过解决方案关闭它.