Destruição ES6, parâmetro de função - nomeando objeto raiz
Existe uma maneira de manter o nome de um argumento de função desestruturada? Ou seja, o nome do objeto raiz?
No ES5, eu poderia fazer isso (usando a herança como uma metáfora para explicar):
// ES5:
var setupParentClass5 = function(options) {
textEditor.setup(options.rows, options.columns);
};
var setupChildClass5 = function(options) {
rangeSlider.setup(options.minVal, options.maxVal);
setupParentClass5(options); // <= we pass the options object UP
};
Estou usando o mesmooptions
objeto para conter vários parâmetros de configuração. Alguns parâmetros são usados pela classe pai e outros são usados pela subclasse.
Existe uma maneira de fazer isso com argumentos de função desestruturados no ES6?
// ES6:
var setupParentClass6 = ({rows, columns}) => {
textEditor.setup(rows, columns);
};
var setupChildClass6 = ({minVal, maxVal}) => {
rangeSlider.setup(minVal, maxVal);
setupParentClass6( /* ??? */ ); // how to pass the root options object?
};
Ou preciso extrair todas as opções emsetupChildClass6()
para que possam ser passados individualmente parasetupParentClass6()
?
// ugh.
var setupChildClass6b = ({minVal, maxVal, rows, columns}) => {
rangeSlider.setup(minVal, maxVal);
setupParentClass6({rows, columns});
};