为什么linter错误显示为“未提供'thisArg'的参数”?

时间:2018-11-08 06:57:28

标签: typescript ecmascript-6

我想在这段代码中使用传播语法:

Math.min.apply( ...categories.map( cat => cat.category_id ) );

显示以下棉绒错误:

  

未提供'thisArg'的参数

如何在返回数组的函数上使用扩展语法?

3 个答案:

答案 0 :(得分:3)

apply采用上下文和数组中的参数。所以用这个,

Math.min.apply(null, categories.map( cat => cat.category_id ) ));

但是由于apply不使用上下文(请参见实现here),因此您应该简单地使用

Math.min(...categories.map( cat => cat.category_id ) ));

答案 1 :(得分:0)

不使用套用。

Math.min(...categories.map(c => c.category_id))

答案 2 :(得分:0)

您的代码不正确。 error: '@{ContextCompat.getDrawable(context, viewData.getIconResource())}' is incompatible with attribute android:src (attr) reference|color. error: '@{viewData.getIconVisibility() ? View.VISIBLE : View.GONE}' is incompatible with attribute android:visibility (attr) enum [gone=2, invisible=1, visible=0]. 首先执行Function.apply参数。例如:

this

这里的问题是要知道您是否真的需要使用Apply。

总而言之,这只是一个“语法”错误。