Javascript vuex操作负载的默认值?
我试图找到一种更好的方法来为vuex操作负载属性设置默认值,现在我使用if-else来检查传递的负载对象是否具有延迟属性,如果没有,我将该值设置为默认值,您可以想象其余的情况 有没有更好的方法用更少的行数做到这一点?我相信一定有 以下是我的行动:Javascript vuex操作负载的默认值?,javascript,vue.js,Javascript,Vue.js,我试图找到一种更好的方法来为vuex操作负载属性设置默认值,现在我使用if-else来检查传递的负载对象是否具有延迟属性,如果没有,我将该值设置为默认值,您可以想象其余的情况 有没有更好的方法用更少的行数做到这一点?我相信一定有 以下是我的行动: showModal ( {commit}, modalPayload ) { let delay; if(modalPayload.delay == undefined){ delay = 3
showModal ( {commit}, modalPayload ) {
let delay;
if(modalPayload.delay == undefined){
delay = 3000;
}
else{
delay = modalPayload.delay
}
commit('SHOW_MODAL', modalPayload);
setTimeout(function(){
commit('HIDE_MODAL');
}, delay);
},
提前感谢。您可以使用以下设置默认值: 此外,如果不需要将
delay
传递给commit
,则可以对第二个函数参数进行分解:
showModal ({ commit }, { delay = 3000, ...modalPayload }) {
commit('SHOW_MODAL', modalPayload);
setTimeout(() => commit('HIDE_MODAL'), delay);
}
showModal ({ commit }, { delay = 3000, ...modalPayload }) {
commit('SHOW_MODAL', modalPayload);
setTimeout(() => commit('HIDE_MODAL'), delay);
}