非常量預設值
可選引數的預設值必須是常量。
描述
#當可選引數(無論是命名引數還是位置引數)的預設值不是編譯時常量時,分析器會生成此診斷資訊。
示例
#以下程式碼會生成此診斷資訊:
dart
var defaultValue = 3;
void f([int value = defaultValue]) {}常見修復方法
#如果預設值可以轉換為常量,則進行轉換。
dart
const defaultValue = 3;
void f([int value = defaultValue]) {}如果預設值需要隨時間變化,則在函式內部應用預設值。
dart
var defaultValue = 3;
void f([int? value]) {
value ??= defaultValue;
}