颤振构造函数参数可选不是常量
flutter contructor parameter optional not constant
我想构建一个具有可选参数的构造函数。问题是这个参数没有接收到常量值。我怎么会有一个不分配常量值的可选参数?
在我的代码中,可选参数称为 _id,它使用 UniqueKey() 函数。
我的代码如下:
import 'package:depresion/models/actividad.dart';
import 'package:flutter/widgets.dart';
class RegistroAnsiedad{
late final UniqueKey _id;
late final int _estado_animo;
late final int _fecha;
late final int _nivel_ansiedad;
late final Actividad _actividad;
RegistroAnsiedad(
this._estado_animo,
this._fecha,
this._nivel_ansiedad,
this._actividad,
[this._id]
)
{
this._estado_animo = _estado_animo;
this._fecha = _fecha;
this._nivel_ansiedad = _nivel_ansiedad;
this._actividad = _actividad;
this._id = UniqueKey();
}
UniqueKey get id => _id;
int get estado_animo => _estado_animo;
int get fecha => _fecha;
int get nivel_ansiedad => _nivel_ansiedad;
Actividad get actividad => _actividad;
@override
String toString() {
return "Registro ansiedad [id=${this._estado_animo},"
"fecha=${this._fecha},"
"nivel_ansiedad=${this._nivel_ansiedad},"
"actividad = ${this._actividad}]";
}
}
提前致谢
如下更改您的class
class RegistroAnsiedad{
final UniqueKey _id;
final int _estado_animo;
final int _fecha;
final int _nivel_ansiedad;
final Actividad _actividad;
RegistroAnsiedad(
this._estado_animo,
this._fecha,
this._nivel_ansiedad,
this._actividad,
[UniqueKey id]
): this._id = id ?? UniqueKey();
UniqueKey get id => _id;
int get estado_animo => _estado_animo;
int get fecha => _fecha;
int get nivel_ansiedad => _nivel_ansiedad;
Actividad get actividad => _actividad;
@override
String toString() {
return "Registro ansiedad [id=${this._estado_animo},"
"fecha=${this._fecha},"
"nivel_ansiedad=${this._nivel_ansiedad},"
"actividad = ${this._actividad}]";
}
}
我想构建一个具有可选参数的构造函数。问题是这个参数没有接收到常量值。我怎么会有一个不分配常量值的可选参数?
在我的代码中,可选参数称为 _id,它使用 UniqueKey() 函数。
我的代码如下:
import 'package:depresion/models/actividad.dart';
import 'package:flutter/widgets.dart';
class RegistroAnsiedad{
late final UniqueKey _id;
late final int _estado_animo;
late final int _fecha;
late final int _nivel_ansiedad;
late final Actividad _actividad;
RegistroAnsiedad(
this._estado_animo,
this._fecha,
this._nivel_ansiedad,
this._actividad,
[this._id]
)
{
this._estado_animo = _estado_animo;
this._fecha = _fecha;
this._nivel_ansiedad = _nivel_ansiedad;
this._actividad = _actividad;
this._id = UniqueKey();
}
UniqueKey get id => _id;
int get estado_animo => _estado_animo;
int get fecha => _fecha;
int get nivel_ansiedad => _nivel_ansiedad;
Actividad get actividad => _actividad;
@override
String toString() {
return "Registro ansiedad [id=${this._estado_animo},"
"fecha=${this._fecha},"
"nivel_ansiedad=${this._nivel_ansiedad},"
"actividad = ${this._actividad}]";
}
}
提前致谢
如下更改您的class
class RegistroAnsiedad{
final UniqueKey _id;
final int _estado_animo;
final int _fecha;
final int _nivel_ansiedad;
final Actividad _actividad;
RegistroAnsiedad(
this._estado_animo,
this._fecha,
this._nivel_ansiedad,
this._actividad,
[UniqueKey id]
): this._id = id ?? UniqueKey();
UniqueKey get id => _id;
int get estado_animo => _estado_animo;
int get fecha => _fecha;
int get nivel_ansiedad => _nivel_ansiedad;
Actividad get actividad => _actividad;
@override
String toString() {
return "Registro ansiedad [id=${this._estado_animo},"
"fecha=${this._fecha},"
"nivel_ansiedad=${this._nivel_ansiedad},"
"actividad = ${this._actividad}]";
}
}