问题描述
您好,从步进器来回移动时出现错误。第一次进入 next 工作正常,但如果我按取消,然后在下拉步骤中出现错误。我得到的错误是
本机“AssertionError_throwNew”;“BookingLotsModel”的实例。 检测到零个或 2 个或更多 [DropdownMenuItem] 具有相同的值)
下拉菜单
int _currentStep = 0;
BookingLotsModel _mySelection = BookingLotsModel(id: '0',posttitle: '');
List<BookingLotsModel> data = [];
....
continued() {
print(data);
if (_currentStep == 0) {
APIServices.getlotsfordates(userid,_token,checking,checkout)
.then((response) {
setState(() {
data = [];
_mySelection = BookingLotsModel(id: '',posttitle: '');
data = bookinglotFromJson(response);
});
return "Sucess";
});
return 'null';
}
cancel() {
_currentStep > 0 ? setState(() => _currentStep -= 1) : null;
}
....
child: DropdownButtonFormField<BookingLotsModel>(
isExpanded: true,isDense: true,hint: const Text("Select Lot"),items: data.map<DropdownMenuItem<BookingLotsModel>>(
(BookingLotsModel value) {
return DropdownMenuItem<BookingLotsModel>(
child: Text(value.posttitle),value: value,);
}).toList(),onChanged: (newVal) {
setState(() {
_mySelection = newVal!;
});
},value: null,),
BookingLotsModel
List<BookingLotsModel> bookinglotFromJson(String str) =>
List<BookingLotsModel>.from(
json.decode(str).map((x) => BookingLotsModel.fromJson(x)));
String bookinglottoJson(List<BookingLotsModel> data) =>
json.encode(List<dynamic>.from(data.map((x) => x.toJson())));
class BookingLotsModel {
String id = '';
String? postcontent;
String posttitle = '';
BookingLotsModel(
{required this.id,required this.posttitle,});
factory BookingLotsModel.fromJson(Map<String,dynamic> json) =>
BookingLotsModel(
id: json['post']['ID'].toString(),posttitle: json['post']['post_title'],Map<String,dynamic> toJson() => {
"post_title": posttitle,"ID": id,};
}
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)