转换 => () => 为 ES5



由于依赖于执行脚本的系统,我正在将一些脚本从ES6转换为ES5。我遇到了这个特定命令的问题:

transition.selectAll('path.hidden-arc')
.attrTween('d', d => () => middleArcLine(d));

我不确定他们用'=>((=>'语法,不确定如何将其转换为ES5标准函数。非常感谢您的帮助。

它使用箭头函数来表示一个函数,该函数返回调用middleArcline函数的值。在ES5中,它可能看起来像这样:

transition.selectAll('path.hidden-arc').attrTween('d', function (d) {
return function () {
return middleArcLine(d);
};
});

注意,Babel是在不同版本的JavaScript 之间进行编译的好工具

我猜这是一个调用函数的函数。试试这个

transition.selectAll('path.hidden-arc')
.attrTween('d', function (d) {
return function() {
return middleArcLine(d)
}
}
);

我可能错了,但只是尝试一下。

transition.selectAll('path.hidden-arc')
.attrTween('d', function (d) {
return function() {
return   middleArcLine(d)
}
);

最新更新