小编Koa*_*ala的帖子

Flutter GETX:每次导航到其他页面/路由时如何删除初始化控制器

这里是新手。每次我推回屏幕时如何重新运行 onInit() ?onInit() 仅运行一次,但导航回上一个屏幕不会删除已初始化的控制器 ( FetchData ) 嗯..

每次我想弹出页面时, 我只使用Get.back() ,而每次我想在命名路线上导航时,我只使用Get.toNamed()

我唯一想要发生的事情是每次弹出页面时删除初始化控制器(FetchData),但我不知道该怎么做。

我的GetxController

class FetchData extends GetxController {
    RxList items = [].obs;
    @override
    onInit() {
      fetchData();
      super.onInit();
    }
    
    Future<void> fetchData() async {
     var result = await http.get("api.url");
     items.value = result.body;
    }
}
Run Code Online (Sandbox Code Playgroud)

提前致谢!

dart flutter flutter-getx

11
推荐指数
3
解决办法
3万
查看次数

是否可以从另一个 GetxController 访问 GetxController 值?Flutter 获取包

我是 Flutter 新手,所以使用 GetX https://pub.dev/packages/get

我可以从控制器内的“另一个控制器”访问值吗?

它们都将被初始化,但我不想在屏幕/小部件/处理程序等处传递“ id ”,我只想在控制器到控制器之间传递“ id ”(如果可能)

这是一个例子

  1. 这是我的第一个控制器

    类firstController扩展GetxController { var id = 1; }

  2. 这是我的第二个控制器,我想从第一个控制器访问 id

    类 SecondController 扩展 GetxController { var CopyIdFromFirstController = 1; }

我知道这听起来很傻,但我喜欢探索事物(笑)

先感谢您!

dart flutter flutter-getx

10
推荐指数
1
解决办法
2万
查看次数

标签 统计

dart ×2

flutter ×2

flutter-getx ×2