如果我有一些需要传递的命名参数级别,我不想为任何方法(例如,
)键入命名参数BaseText(文本,选项) LargerText(文本,选项) MenuText(文本,选项)
最终,我需要使用不同的默认值将此参数传递给Text Widget, 但是写出所有参数,然后将每个参数传递下去似乎是很多工作, 我该如何解决这个问题。
在JS中我会做
LargerText(text,options){
options = {...defaultOptions,...options}
return BaseText(text,options)
}
答案 0 :(得分:1)
如果 Dart 支持将映射扩展为命名参数,这会降低类型安全性,或者引入开销检查。
使用对象来解决这个问题。这正是对象的用途。每次调用时,编译器都会检查该类是否是该方法所期望的,以及是否存在所有字段。地图上不会有这个。