相关疑难解决方法(0)

ES6解构函数参数 - 命名根对象

有没有办法保留析构函数参数的名称?即,根对象的名称?

在ES5中,我可能会这样做(使用继承作为隐喻来说明问题):

// 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
};
Run Code Online (Sandbox Code Playgroud)

我使用相同的options对象来保存多个配置参数.一些参数由父类使用,一些参数由子类使用.

有没有办法在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?
};
Run Code Online (Sandbox Code Playgroud)

或者我是否需要提取所有选项setupChildClass6()以便可以单独传递setupParentClass6()

// ugh.
var setupChildClass6b = ({minVal, maxVal, …
Run Code Online (Sandbox Code Playgroud)

javascript arguments function destructuring ecmascript-6

21
推荐指数
3
解决办法
2647
查看次数