feat(item): 添加物品编辑功能- 在 AddItemScreen 中添加编辑物品的功能
- 接受一个可选的 Item 对象用于编辑 - 在初始化时加载物品的现有数据 - 更新 ItemListScreen 中的编辑按钮,使其导航到 AddItemScreen 并传递要编辑的物品
This commit is contained in:
parent
faf439087a
commit
b7d1cdc62e
@ -52,7 +52,7 @@ class _ItemListScreenState extends State<ItemListScreen> {
|
||||
Navigator.push(
|
||||
context,
|
||||
MaterialPageRoute(
|
||||
builder: (context) => DetailItemScreen(item: item),
|
||||
builder: (context) => AddItemScreen(itemToEdit: item),
|
||||
),
|
||||
);
|
||||
},
|
||||
|
||||
@ -41,8 +41,14 @@ extension ItemIsUseX on ItemIsUse {
|
||||
}
|
||||
|
||||
class AddItemScreen extends StatefulWidget {
|
||||
final Item? itemToEdit;
|
||||
|
||||
const AddItemScreen({Key? key, this.itemToEdit}) : super(key: key);
|
||||
|
||||
@override
|
||||
_FromTestRouteSate createState() => _FromTestRouteSate();
|
||||
|
||||
|
||||
}
|
||||
|
||||
class _FromTestRouteSate extends State<AddItemScreen> {
|
||||
@ -59,6 +65,17 @@ class _FromTestRouteSate extends State<AddItemScreen> {
|
||||
// 添加自定义分类列表
|
||||
List<String> _categories = ['A', 'B', 'C', 'D']; // 自定义分类
|
||||
|
||||
@override
|
||||
void initState() {
|
||||
super.initState();
|
||||
final item = widget.itemToEdit;
|
||||
if (item != null) {
|
||||
_name = item.name;
|
||||
_description = item.description!;
|
||||
_selectedDate = item.purchaseDate;
|
||||
}
|
||||
}
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
return Scaffold(
|
||||
|
||||
Loading…
Reference in New Issue
Block a user