我有一个类似
的处理程序handleSelect = (k0, k1, v) => {
...
}
};
我想在此将k1
设为可选。有什么好方法吗?
答案 0 :(得分:6)
没有好的方法。这不是特定于React或箭头。
中间带有可选参数的可变参数函数需要解析参数:
handleSelect = (...args) => {
let k0, k1, v;
if (args.length > 2) {
[k0, k1, v0] = args;
} else {
[k0, v0] = args;
k1 = 'default';
}
...
};
这可能会导致API模糊。对于具有多个参数(其中一些可以是可选参数)的函数,更好的配方是接受带有选项的对象。函数不以这种方式依赖于参数顺序:
handleSelect = ({ k0, k1 = 'default', v }) => {
...
};