![](/img/trans.png)
[英]How to write a function (in flutter-dart) so that it accepts certain parameters when we call that function?
[英]How to declare a function callback that accepts multiple parameters in Dart/Flutter?
final ValueSetter<int> setVal;
可以分配一个 function 回调,它接受一个参数,例如
setVal=(i){
//assign i to some variable
}
如果我希望回调接受 2 个参数,例如
setVal=(i,j){
//assign i and j to some variable
}
?
ValueSetter 的类型定义为:
typedef ValueSetter<T> = void Function(T value);
例如,采用一个参数的 function。 所以,不,你不能给它一个带有两个参数的 function。
final Function(int, String) = (int a, String b){
/* do stuff */
}
Function
类型的变量可以声明如下:
void main() {
void Function(int) setVal1;
void Function(int, int) setVal2;
setVal1 = (int i) => print('$i');
setVal2 = (int i, int j) => print('$i, $j');
final String Function(int, int, [double]) setVal3 =
(int i, int j, [double k]) => '$i, $j, $k';
final i = 0;
final j = 1;
final double k = 2.0;
setVal1(i);
setVal2(i, j);
print(setVal3(i, j));
print(setVal3(i, j, k));
}
只需将您想要的任何内容放入 map 并通过 map。 像这样的东西:
Map<String, dynamic> updateMap = {
'id': id,
'value': value
widget.onUpdate(updateMap);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.