使用GetX返回flutter中的参数并访问上一页中的结果

ljsrvy3e  于 2023-05-29  发布在  Flutter
关注(0)|答案(2)|浏览(403)

我正在创建一个flutter应用程序,它使用户能够选择一个联系人,并在从联系人列表中导航回来之前显示所选的联系人。

class ContactsList extends StatelessWidget {
      final List<AppContact> contacts;
      Function() reloadContacts;
      ContactsList({Key? key, required this.contacts, required this.reloadContacts})
          : super(key: key);
      @override
      Widget build(BuildContext context) {
        return Expanded(
          child: ListView.builder(
            shrinkWrap: true,
            itemCount: contacts.length,
            itemBuilder: (context, index) {
              AppContact contact = contacts[index];
    
              return ListTile(
                  onTap: () {
                    Get.back(result:contact.info.phones!.elementAt(0).value!);
                  },
                  title: Text(contact.info.displayName!),
                  subtitle: Text(contact.info.phones!.length > 0
                      ? contact.info.phones!.elementAt(0).value!
                      : ''),
                  leading: ContactAvatar(contact, 36));
            },
          ),
        );
      }
    }
nfs0ujit

nfs0ujit1#

我不确定你是否想要这样,但是你可以使用await关键字和navigate函数。
例如;

final data = await Get.to(Payment());

如果你想了解一些关于用getx导航信息,你可以访问文档

kb5ga3dv

kb5ga3dv2#

很简单,在Getx的back方法中使用result参数,像这样等待数据
var data = await Get.to(()=>Screen());
然后像这样发回数据
Get.back(result:some_data);

相关问题