For循环只返回第一个json对象颤振
当我试图从JSON获取数据时,我只能返回第一个对象。 我提到了我认为问题所在的声明。我想返回JSON中所有可用的对象,以便在卡片列表中显示它。我需要返回所有JSON对象并将其传递到另一个包含卡片列表的页面。如果有人知道解决方案,请帮我解决。 提前谢谢For循环只返回第一个json对象颤振,json,listview,flutter,dart,Json,Listview,Flutter,Dart,当我试图从JSON获取数据时,我只能返回第一个对象。 我提到了我认为问题所在的声明。我想返回JSON中所有可用的对象,以便在卡片列表中显示它。我需要返回所有JSON对象并将其传递到另一个包含卡片列表的页面。如果有人知道解决方案,请帮我解决。 提前谢谢 import 'dart: convert'; import 'package:flutter/cupertino.dart'; import 'package:tts/tts.dart'; import 'package:wiizboo/serv
import 'dart: convert';
import 'package:flutter/cupertino.dart';
import 'package:tts/tts.dart';
import 'package:wiizboo/service/Chatmsg_service.dart';
import 'package:wiizboo/widget/a%20copy.dart';
import 'package:wiizboo/widget/chat_in_message.dart';
import 'package:wiizboo/widget/chat_out_message.dart';
import 'package:wiizboo/widget/form.dart';
import 'package:wiizboo/widget/image_camera.dart';
import 'package:wiizboo/widget/image_gallery.dart';
class ChatMessageModel with ChangeNotifier {
String data;
List accntdet;
ChatmessageService chatservice = ChatmessageService();
List<Widget> messages = <Widget>[];
ChatMessageModel() {
sendMsg("Hi");
}
Future handlesubmission(String chattext) {
Widget message = new ChatInMessage(
text: chattext,
name: "Me",
type: true,
);
addMsg(message);
sendMsg(chattext);
}
addMsg(Widget msg) {
messages.insert(0, msg);
notifyListeners();
}
sendMsg(String msg) {
chatservice.SendMsg(msg).then((String msg) {
responseBuilder(msg);
});
}
responseBuilder(String msg) {
Widget message;
String identifier = '';
var arr = msg.split("~");
if (arr.length > 1) {
identifier = arr[0];
msg = arr[1];
} else {
msg = arr[0];
}
switch (identifier) {
case 'email_phone':
message = new Forms(onSubmitted: (String val) {
Widget a = new ChatInMessage(
text: val,
name: "Me",
type: true,
);
addMsg(a);
sendMsg(val);
});
break;
case 'selfie':
message = new ImageCamera(onSubmitted: (String imageres) {
Widget b = new ChatInMessage(
text: imageres,
name: "Me",
type: true,
);
sendMsg(imageres);
});
break;
case 'aadhar':
message = new ImageGalery(onSubmitted: (String imageres) {
Widget b = new ChatInMessage(
text: imageres,
name: "Me",
type: true,
);
sendMsg(imageres);
});
break;
case 'account_info':
print(msg);
data = msg;
String receivedJson = data;
List<dynamic> list = json.decode(receivedJson);
accntdet = list;
int l = list.length;
print(l);
//------------ the statement --------//
for (dynamic account in accntdet) {
message = new AccountInfo(
l: l,
iban: account['ibn_no'],
accno: account['account_no'],
sort: account['sort-code'],
currency: account['currency'],
);
}
//----------//
print(message);
break;
default:
message = new ChatOutMessage(
text: msg,
name: "WzBoo..",
);
Tts.speak(msg);
}
addMsg(message);
}
}
导入'dart:convert';
进口“包装:颤振/cupertino.dart”;
导入“包:tts/tts.dart”;
导入“包:wiizboo/service/Chatmsg_service.dart”;
导入“包:wiizboo/widget/a%20copy.dart”;
导入“package:wiizboo/widget/chat_in_message.dart”;
导入“package:wiizboo/widget/chat_out_message.dart”;
导入“package:wiizboo/widget/form.dart”;
导入“包:wiizboo/widget/image_-camera.dart”;
导入“package:wiizboo/widget/image_gallery.dart”;
使用ChangeNotifier类ChatMessageModel{
字符串数据;
列出会计科目;
ChatmessageService chatservice=ChatmessageService();
列表消息=[];
ChatMessageModel(){
sendMsg(“Hi”);
}
未来手持数据传输(字符串chattext){
Widget message=新聊天信息(
文本:chattext,
姓名:“我”,
类型:对,
);
addMsg(消息);
sendMsg(chatterxt);
}
addMsg(小部件msg){
消息。插入(0,msg);
notifyListeners();
}
sendMsg(字符串msg){
然后((字符串msg){
响应生成器(msg);
});
}
响应生成器(字符串消息){
控件消息;
字符串标识符=“”;
var arr=msg.split(“~”);
如果(arr.length>1){
标识符=arr[0];
msg=arr[1];
}否则{
msg=arr[0];
}
交换机(标识符){
“电子邮件电话”案例:
消息=新表单(提交时:(字符串val){
小部件a=新聊天信息(
文本:val,
姓名:“我”,
类型:对,
);
addMsg(a);
sendMsg(val);
});
打破
“自拍”案例:
消息=新的ImageCamera(提交时:(字符串imageres){
小部件b=新聊天信息(
文本:imageres,
姓名:“我”,
类型:对,
);
sendMsg(imageres);
});
打破
“阿达尔”案:
message=newImageGalery(提交时:(字符串imageres){
小部件b=新聊天信息(
文本:imageres,
姓名:“我”,
类型:对,
);
sendMsg(imageres);
});
打破
案例“账户信息”:
印刷品(味精);
数据=味精;
字符串receivedJson=数据;
List=json.decode(receivedJson);
accntdet=列表;
int l=list.length;
印刷品(l);
//------------声明--------//
for(账户中的动态账户){
消息=新帐户信息(
l:l,
iban:帐户['ibn_no'],
账户编号:账户[“账户编号”],
排序:帐户['sort-code'],
货币:账户[“货币”],
);
}
//----------//
打印(信息);
打破
违约:
message=new ChatOutMessage(
文本:msg,
名称:“WzBoo…”,
);
Tts.speak(msg);
}
addMsg(消息);
}
}
更改此集团
class ChatMessageModel with ChangeNotifier {
String data;
List accntdet;
ChatmessageService chatservice = ChatmessageService();
List<Widget> messages = <Widget>[];
ChatMessageModel() {
sendMsg("Hi");
}
Future handlesubmission(String chattext) {
Widget message = new ChatInMessage(
text: chattext,
name: "Me",
type: true,
);
addMsg(message);
sendMsg(chattext);
}
addMsg(Widget msg) {
messages.insert(0, msg);
notifyListeners();
}
sendMsg(String msg) {
chatservice.SendMsg(msg).then((String msg) {
responseBuilder(msg);
});
}
responseBuilder(String msg) {
Widget message;
String identifier = '';
var arr = msg.split("~");
if (arr.length > 1) {
identifier = arr[0];
msg = arr[1];
} else {
msg = arr[0];
}
switch (identifier) {
case 'email_phone':
message = new Forms(onSubmitted: (String val) {
Widget a = new ChatInMessage(
text: val,
name: "Me",
type: true,
);
addMsg(a);
sendMsg(val);
});
break;
case 'selfie':
message = new ImageCamera(onSubmitted: (String imageres) {
Widget b = new ChatInMessage(
text: imageres,
name: "Me",
type: true,
);
sendMsg(imageres);
});
addMsg(message);
break;
case 'aadhar':
message = new ImageGalery(onSubmitted: (String imageres) {
Widget b = new ChatInMessage(
text: imageres,
name: "Me",
type: true,
);
sendMsg(imageres);
});
break;
case 'account_info':
print(msg);
data = msg;
String receivedJson = data;
List<dynamic> list = json.decode(receivedJson);
accntdet = list;
int l = list.length;
print(l);
//------------ the statement --------//
for (dynamic account in accntdet) {
message = new AccountInfo(
l: l,
iban: account['ibn_no'],
accno: account['account_no'],
sort: account['sort-code'],
currency: account['currency'],
);
print(message);
addMsg(message);
}
//----------//
break;
default:
message = new ChatOutMessage(
text: msg,
name: "WzBoo..",
);
Tts.speak(msg);
addMsg(message);
}
}
}
class ChatMessageModel和ChangeNotifier{
字符串数据;
列出会计科目;
ChatmessageService chatservice=ChatmessageService();
列表消息=[];
ChatMessageModel(){
sendMsg(“Hi”);
}
未来手持数据传输(字符串chattext){
Widget message=新聊天信息(
文本:chattext,
姓名:“我”,
类型:对,
);
addMsg(消息);
sendMsg(chatterxt);
}
addMsg(小部件msg){
消息。插入(0,msg);
notifyListeners();
}
sendMsg(字符串msg){
然后((字符串msg){
响应生成器(msg);
});
}
响应生成器(字符串消息){
控件消息;
字符串标识符=“”;
var arr=msg.split(“~”);
如果(arr.length>1){
标识符=arr[0];
msg=arr[1];
}否则{
msg=arr[0];
}
交换机(标识符){
“电子邮件电话”案例:
消息=新表单(提交时:(字符串val){
小部件a=新聊天信息(
文本:val,
姓名:“我”,
类型:对,
);
addMsg(a);
sendMsg(val);
});
打破
“自拍”案例:
消息=新的ImageCamera(提交时:(字符串imageres){
小部件b=新聊天信息(
文本:imageres,
姓名:“我”,
类型:对,
);
sendMsg(imageres);
});
addMsg(消息);
打破
“阿达尔”案:
message=newImageGalery(提交时:(字符串imageres){
小部件b=新聊天信息(
文本:imageres,
姓名:“我”,
类型:对,
);
sendMsg(imageres);
});
打破
案例“账户信息”:
印刷品(味精);
数据=味精;
字符串receivedJson=数据;
List=json.decode(receivedJson);
accntdet=列表;
int l=list.length;
印刷品(l);
//------------声明--------//
for(账户中的动态账户){
消息=新帐户信息(
l:l,
iban:帐户['ibn_no'],
账户编号:账户[“账户编号”],
排序:帐户['sort-code'],
货币:账户[“货币”],
);
打印(信息);
addMsg(消息);
}
//----------//
打破
违约:
message=new ChatOutMessage(
文本:msg,
名称:“WzBoo…”,
);
Tts.speak(msg);
addMsg(消息);
}
}
}
更改此集团
class ChatMessageModel with ChangeNotifier {
String data;
List accntdet;
ChatmessageService chatservice = ChatmessageService();
List<Widget> messages = <Widget>[];
ChatMessageModel() {
sendMsg("Hi");
}
Future handlesubmission(String chattext) {
Widget message = new ChatInMessage(
text: chattext,
name: "Me",
type: true,
);
addMsg(message);
sendMsg(chattext);
}
addMsg(Widget msg) {
messages.insert(0, msg);
notifyListeners();
}
sendMsg(String msg) {
chatservice.SendMsg(msg).then((String msg) {
responseBuilder(msg);
});
}
responseBuilder(String msg) {
Widget message;
String identifier = '';
var arr = msg.split("~");
if (arr.length > 1) {
identifier = arr[0];
msg = arr[1];
} else {
msg = arr[0];
}
switch (identifier) {
case 'email_phone':
message = new Forms(onSubmitted: (String val) {
Widget a = new ChatInMessage(
text: val,
name: "Me",
type: true,
);
addMsg(a);
sendMsg(val);
});
break;
case 'selfie':
message = new ImageCamera(onSubmitted: (String imageres) {
Widget b = new ChatInMessage(
text: imageres,
name: "Me",
type: true,
);
sendMsg(imageres);
});
addMsg(message);
break;
case 'aadhar':
message = new ImageGalery(onSubmitted: (String imageres) {
Widget b = new ChatInMessage(
text: imageres,
name: "Me",
type: true,
);
sendMsg(imageres);
});
break;
case 'account_info':
print(msg);
data = msg;
String receivedJson = data;
List<dynamic> list = json.decode(receivedJson);
accntdet = list;
int l = list.length;
print(l);
//------------ the statement --------//
for (dynamic account in accntdet) {
message = new AccountInfo(
l: l,
iban: account['ibn_no'],
accno: account['account_no'],
sort: account['sort-code'],
currency: account['currency'],
);
print(message);
addMsg(message);
}
//----------//
break;
default:
message = new ChatOutMessage(
text: msg,
name: "WzBoo..",
);
Tts.speak(msg);
addMsg(message);
}
}
}
class ChatMessageModel和ChangeNotifier{
字符串数据;
列表帐户