在dart中,私有变量的写法是用下划线_区分的,但在构造函数的可选参数中,确实不允许下划线的出现,如:
class LoadingDialog{
final _valueColor;
LoadingDialog(this._valueColor);
}
这段代码将会出现Named optional parameters can’t start with an underscore。
解决方案一
如果变量不是用final修饰,如:
class LoadingDialog{
Color _valueColor;
LoadingDialog(this._valueColor);
}
可以这么写:
class LoadingDialog{
Color _valueColor;
LoadingDialog(this.valueColor){
this._valueColor = valueColor;
}
解决方案二
如果变量用final修饰,方案一的代码仍会报错,这时候只能使用参数列表
class LoadingDialog{
final _valueColor;
LoadingDialog(this._valueColor):this._valueColor = valueColor;
}
参考:https://stackoverflow.com/questions/52449508/constructor-optional-params
版权声明:本文为qq_44756582原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。