有一个订单列表(包含订单),它配置了页面浏览构建器(水平滚动),并且在每个订单页面中都有 listview.builder(垂直滚动)中的项目,我能够成功地动态配置。
现在每个订单都有n个商品,每个商品都有一个按钮,可以成功调用。现在,在成功操作之后,我希望按照执行操作的顺序的订单项应该从 listview.builder 中删除,因为它会在服务器后端中删除。
当订单没有剩余商品时,它也应该从 pageview.builder 中删除,因为它也会从服务器中删除。
我正在使用的代码如下,用于 pageview.builder 和 list.viewbuilder 的小部件
FutureBuilder(
future: _future,
builder: (context, snapshot) {
switch (snapshot.connectionState) {
case ConnectionState.none:
return Text('none');
case ConnectionState.waiting:
return Center(child: CircularProgressIndicator());
case ConnectionState.active:
return Text('');
case ConnectionState.done:
if (snapshot.hasError) {
return Text(
'${snapshot.error}',
style: TextStyle(color: Colors.red),
);
} else {
return PageView.builder(
scrollDirection: Axis.horizontal,
itemCount: snapshot.data.content.length,// length of total orders
itemBuilder: (context, index) {
var firstdata = jsonResponse['content'];
var list = firstdata[index]['order_items'];
return Column(
children:<Widget>[
Text( firstdata[index]['order_no]),
ListView.builder(
shrinkWrap: true,
itemCount: //lenght of the items in the order to be determined,
itemBuilder: (context, index) {
return Column(
children: [
Text(list[index]['item_number']),
RaisedButton(
onPressed: (){
callaction();
},
)
],
);
},
),
])
});
}
}
})
调用的函数
callaction(){
print('action called on server');
var response = await http.post(url, body: data);
if (response.statusCode == 200) {
print('success');
}
}
请指导我如何实现所需的功能。json颤振索引颤振列表视图颤振页面视图