如何在 Flutter 中使用 GetX 观察 GetxController class 中的值变化并触发 statelessWidget class 中的导航?
How do I observe a value change in a GetxController class and trigger navigation in the statelessWidget class using GetX in Flutter?
我在一个场景中需要在异步任务上接收数据,然后根据回复决定是否导航到下一页。
但据我所知,GetX 中的状态管理支持在使用 .obs
和 obx()
.
更改 GetxController 中的值时重建小部件
如何观察数值变化触发导航?
您可以在您的异步方法中导航,甚至在您的方法中完成调用。
假设您调用异步方法并使用 dot then 方法,您可以将响应值放入变量中,并可以在其上设置条件,无论它是否应该导航。
Future<int> getData()async{
print('Asynce Method');
return 1;
}
getData().then((result){
print(result);
if(result == 1){
// Navigate here
}
else{
// Don't Navigate
}
});
事实证明,继承自 GetxController
class 的简单 ever<T>
方法可以解决问题。
事实证明,您不应该将 provider
、get_it
和 get_x
混合在一起。带来很多不必要的痛苦,这将导致 get_x
中的某些功能无法正常工作。
我在一个场景中需要在异步任务上接收数据,然后根据回复决定是否导航到下一页。
但据我所知,GetX 中的状态管理支持在使用 .obs
和 obx()
.
如何观察数值变化触发导航?
您可以在您的异步方法中导航,甚至在您的方法中完成调用。
假设您调用异步方法并使用 dot then 方法,您可以将响应值放入变量中,并可以在其上设置条件,无论它是否应该导航。
Future<int> getData()async{
print('Asynce Method');
return 1;
}
getData().then((result){
print(result);
if(result == 1){
// Navigate here
}
else{
// Don't Navigate
}
});
事实证明,继承自 GetxController
class 的简单 ever<T>
方法可以解决问题。
事实证明,您不应该将 provider
、get_it
和 get_x
混合在一起。带来很多不必要的痛苦,这将导致 get_x
中的某些功能无法正常工作。