跳到主要内容

implicit_call_tearoffs

隐式拆分 'call' 方法。

描述

#

当具有 call 方法的对象被赋值给函数类型变量时,分析器会产生此诊断信息,这表示隐式拆分了 call 方法。

示例

#

以下代码会产生此诊断信息,因为 Callable 的实例被传递给了期望 Function 类型的函数

dart
class Callable {
  void call() {}
}

void callIt(void Function() f) {
  f();
}

void f() {
  callIt(Callable());
}

常见修复方法

#

显式拆分 call 方法

dart
class Callable {
  void call() {}
}

void callIt(void Function() f) {
  f();
}

void f() {
  callIt(Callable().call);
}