可选参数的默认值

18

我有一个 Future,我希望它的第一个可选参数是一个空列表。但是 dartanalyzer myFile.dart 返回以下错误:

[error] Default values of an optional parameter must be constant
(/home/user/projects/project/lib/myFolder/myFile.dart, line 7, col 48)

我的代码:

Future<dynamic> myFuture([List<Node> content = []]) async {
/*...*/
}

我该如何消除这个错误?

1个回答

40

你需要使用常量作为默认参数。要定义常量列表,需要使用前置关键字const

Future<dynamic> myFuture([List<Node> content = const []]) async {
/*...*/
}

正常工作,谢谢。在我提问之前,我尝试在代码的错误位置添加了const。 - aleskva
9
如果您尝试添加到此列表,它将抛出“无法向不可修改的列表添加”的错误。 - reverie_ss

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接