是的,Flutter的forEach函数并不支持异步操作。这是因为forEach函数是一个同步函数,它是在调用时立即执行的。如果使用异步操作,就可能导致一些不可预测的行为。
如果需要执行异步操作,可以使用其他forEach函数,例如以下示例中的forEachAsync函数:
Future forEachAsync<T>(
Iterable<T> iterable,
Future<void> Function(T) f,
) async {
for (final element in iterable) {
await f(element);
}
}
这个函数将迭代Iterable对象,并在每个元素上执行给定的异步函数。注意,这个函数并不是Flutter内置函数,而是需要自己定义的。