gpt4 book ai didi

dart - 如何在dart中结束类似于JS类型返回的功能

转载 作者:行者123 更新时间:2023-12-03 04:25:07 26 4
gpt4 key购买 nike

Javascript中,当我想结束一个函数时,我通常会写return,但是在dart中,如果我这样做了,那么该函数会在每个分支的结尾要求一个return语句,这很麻烦。

Function createCategory(File image) {
String title = _categoryTitle.value;
if(image == null || title == null || title.length == 0) {
return null;
}
CategoryModel newCategory = new CategoryModel();
if(_categories.value == null) {
_categories.sink.add([newCategory]);
}
return null;
}

用 Dart 做这件事的正确方法是什么?

最佳答案

我认为您的困惑来自于您的方法是有效的Dart代码,但并没有真正做到我想您所想。您的方法具有以下签名:

Function createCategory(File image) {

这意味着您的方法名为 createCategory,接受一个类型为 File的参数并返回 Function。由于您已经标记了返回 Function的方法,因此Dart会告诉您,如果您只使用 return;是一个问题,因为这不是您想要的。

如果您的方法不会返回任何值,那么您需要使用 void的返回类型来标记它,例如:
void createCategory(File image) {
String title = _categoryTitle.value;
if (image == null || title == null || title.length == 0) {
return;
}
CategoryModel newCategory = new CategoryModel();
if (_categories.value == null) {
_categories.sink.add([newCategory]);
}
return;
}

我应该注意,可以跳过最后一个 return,因为如果缺少Dart,Dart会在函数的末尾自动添加 return;

关于dart - 如何在dart中结束类似于JS类型返回的功能,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60249979/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com