跳至主要內容

prefer_function_declarations_over_variables

使用函式宣告而不是變數賦值來將函式繫結到名稱。

描述

#

當閉包被賦值給區域性變數且該區域性變數未在任何地方被重新賦值時,分析器會產生此診斷。

示例

#

以下程式碼會產生此診斷,因為區域性變數 f 被初始化為閉包,並且沒有被賦值任何其他值

dart
void g() {
  var f = (int i) => i * 2;
  f(1);
}

常見修復

#

將區域性變數替換為區域性函式

dart
void g() {
  int f(int i) => i * 2;
  f(1);
}