为什么在onPressed函数中不需要使用await关键字?例如,有一个url_launcher插件。用法如下:
onPressed: _launchURL,
...
_launchURL() async {
const url = 'https://flutter.dev';
if (await canLaunch(url)) {
await launch(url);
} else {
throw 'Could not launch $url';
}
}
dart是否要求在调用异步函数之前使用await关键字?那么,为什么我们不在_launchURL
中的onPressed
之前使用await关键字呢? 最佳答案
就像注释中所说的那样,您没有调用该函数,因此没有任何等待。
但是,onPressed
实际上期望具有void
返回类型的任何函数,这意味着它不会等待您提供的任何函数。
因此,基本上onPressed只是开始 future ,然后忘记它
关于flutter - 为什么在onPressed函数中不需要使用await关键字?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/64650918/