例如,我有一个动作调用crazyAction
它有三个参数第二个,第三个可以是null但是第一个必须作为休闲;
crazyAction(firstParameter, secondParameter = null, thirdParameter = null){
return{
type: CONSTANTS.WHATEVER,
payload: {firstParameter, secondParameter, thirdParameter}
}
}
当我想发送给它时,我应该按顺序发送参数,比如;
dispatch( uiActions.navigateToPage(firstParameter, null, thirdParameter));
所以问题是如果我只想发送第三个参数而没有第二个参数,那么中间还有另一个没有空值的选项吗?
像这样,这怎么可能?
dispatch( uiActions.navigateToPage(firstParameter, thirdParameter));
使用Destructuring Assignment
,你可以做这样的事情。
缺少的参数将作为空值,这将帮助您不按顺序传递参数。
function crazyAction({ firstParameter, secondParameter, thirdParameter}){
console.log(firstParameter, secondParameter, thirdParameter);
//output "first" null "3"
}
定义包含传递的属性和调用函数的对象。
const objParams = {
firstParameter : "first", thirdParameter:"3"
};
crazyAction(objParams);