Javascript cb&&';函数';==cb&&;cb(数据)与redux thunk一起工作(反应redux)?
我创建了一个模拟承诺作为delay()来访问redux thunk 在动作部分,我无法理解Javascript cb&&';函数';==cb&&;cb(数据)与redux thunk一起工作(反应redux)?,javascript,reactjs,react-redux,redux-thunk,Javascript,Reactjs,React Redux,Redux Thunk,我创建了一个模拟承诺作为delay()来访问redux thunk 在动作部分,我无法理解cb&&&function'==typeof cb&&cb(data)以及它在redux thunk的动作中是如何工作的 class Actions { static start() { return { type: actionType.CREATE_TODO_DOING } } static ok(data, cb) {
cb&&&function'==typeof cb&&cb(data)
以及它在redux thunk的动作中是如何工作的
class Actions {
static start() {
return {
type: actionType.CREATE_TODO_DOING
}
}
static ok(data, cb) {
cb && 'function' === typeof cb && cb(data);
return {
type: actionType.CREATE_TODO_SUCCESS,
payload: data
}
}
static fail(data, cb) {
cb && 'function' === typeof cb && cb(data);
return {
type: actionType.CREATE_TODO_FAILURE,
payload: data
}
}
}
export default (data, cb) => {
return (dispatch, getState) => {
dispatch(Actions.start());
delay(0.5).then(() => {
dispatch(Actions.ok(data, cb));
}).catch(error => dispatch(Actions.fail(error || 'Create failed', cb)))
}
}
这是实现这些目标的捷径
if (cb && 'function' === typeof cb) { // check cb has value + cb is a function or not
cb(data); // call cb function
}
它只是一个回调函数,你想在
动作时调用它。好的
函数被调用了,就是它谢谢,我知道cb&&“function”==typeof cb的意思,我仍然很困惑,我可以问一下为什么它会出现在操作中?它是如何工作的?假设您有一个操作调用loginsucess
,并且在用户成功登录时调用此操作。然后,您希望触发一些(回调),例如重定向、显示消息信息。。。因此,您希望在调度操作loginsucess
时调用此回调。回调是操作中的cb
函数。ok