如果我有一个文本字段,并且在该文本字段中进行了更改,那么我会调用一个函数,该函数会调用一个API,如何限制它,因此,仅当用户在1秒钟内未键入任何内容时,它才会调用该函数?
我在这里迷路了..任何帮助都超过了欢迎。
最佳答案
您需要使用async package中名为CancelableOperation
的类。
您可以在build()
方法之外的有状态窗口小部件中声明它:
CancelableOperation cancelableOperation;
并在
onChanged
回调中像这样使用它:cancelableOperation?.cancel();
cancelableOperation = CancelableOperation.fromFuture(Future.delayed(Duration(seconds: 1), () {
// API call here
}));
关于api - 更改TextField时,请调用api-如何限制这种情况?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/54765307/