flutter - Dart:如何在不调用的情况下引用带有参数的函数?
问题描述
如何在不调用参数的情况下引用 dart 函数?引用一个没有参数的函数很容易,但是当我传递一个参数时,我无法阻止它被调用。
void main() {
Function refA = funA; // Doesn't invoke
Function refB = funB("funB"); // It prints "funB"
}
funA() {
print("funA");
}
funB(String string) {
print(string);
}
没关系,refA
但我该怎么做refB
呢?
解决方案
当您将括号放在函数名称之后时,它会执行该函数并返回该执行的值。试试看funA
Function refA = funA();
它会被调用。参考funB()
你会这样做:
Function refB = funB;
然后你可以像下面这样调用函数:
refB('Text');