dart - result() 是 Dart 中的保留函数还是关键字?

标签 dart

我只是在玩 Dart future ,但遇到了一个错误:

Uncaught Error: NoSuchMethodError: method not found: 'call$2' on null



然后我发现函数“结果”是原因。
但是,如果我为该函数使用另一个名称,则一切正常。
Future<String> result() async {
    var res = await process();
    return 'Your order is: $res';
}

Future<String> process() {
    return Future.delayed(Duration(seconds: 2), () => 'Water');
}

void main() async {
    print(await result());
}

任何人都可以澄清这一点吗?

最佳答案

您在 dart2js 中发现了一个错误,Dart 到 JavaScript 的编译器。对于那个很抱歉。我已在此处提交:https://github.com/dart-lang/sdk/issues/41733 .

回答您的问题:否,result不是 Dart 中的保留关键字。您这里的代码应该可以正常工作(实际上,在命令行上运行或 AOT 编译时可以完美运行)。

关于dart - result() 是 Dart 中的保留函数还是关键字?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60856139/

相关文章:

flutter - 如何在 Flutter 中重置 Hive 数据库

dart - 如何在 Dart 中生成随机字符串?

dart - 从 dart 中的另一个列表中删除列表

dart - Dart:添加一个中间件以使用shelf_rest解析为JSON工作

flutter - 在 BottomNavigationBarType.fixed 中设置事件项目的颜色

dart - 如何减少 ListTile 'leading' 和 'title' 之间的边距? flutter

flutter - 在初始化器中只能访问静态成员

dart - 如何在 flutter 中制作全屏对话框?

dart - 如何在Dart中正确使用WebAudio和Timer

dart - 通过调用继承的 setter 来覆盖 setter