[英]Default value for parameter of Function type in Dart
考慮 Dart 文件中的 function
void myFunction({int input = 1, Function(int, String) callback}) {
// ...
}
所以,我想知道是否有可能為callback
參數指定一個默認值,例如它可以是(_, _) => { }
之類的東西。
PS我知道它有null
作為默認值和??
可以幫助避免NPE
,我只是好奇這是否可能。 干杯。
您可以執行以下操作:
dynamic func(int i, String s) {
print(i.toString() + s);
}
void myFunction({int input = 1, Function(int, String) callback = func}) {
callback(input, " .");
}
void main() {
myFunction(input: 2);
}
可選參數的默認值必須是常量。
文件是這樣說的
這個東西可以這樣繞過:
dynamic myCallback(int a,String b) {
}
void myFunction({int input = 1, Function(int, String) callback }) {
if (callback == null) callback = myCallback;
}
編輯:
或者,您可以使用不帶myCallback 函數myCallback
匿名函數,如下所示:
void myFunction({int input = 1, Function(int, String) callback }) {
if (callback == null) callback = (a,b){};
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.