Flutter 未调用GetxController onClose

Flutter 未调用GetxController onClose,flutter,flutter-getx,Flutter,Flutter Getx,我有一个getx控制器a,它具有另一个控制器B的属性。但是当我删除控制器a时,会调用a的onClose(),而不会调用B的onClose() // Controller A @override void onClose() { print('close A'); B.dispose(); super.onClose(); } 直到我加上这一行 @override void onClose() { B.onClose(); B.dispo

我有一个getx控制器a,它具有另一个控制器B的属性。但是当我删除控制器a时,会调用a的onClose(),而不会调用B的onClose()

// Controller A  
@override
  void onClose() {
    print('close A');
    B.dispose();
    super.onClose();
  }
直到我加上这一行

 @override
  void onClose() {
    B.onClose();
    B.dispose();
    super.onClose();
  }

我最近对Getx感兴趣,感谢您查看此问题:)

您的控制器B是否正在被任何其他页面/控制器使用?如果是这样,这就是预期的行为。 另外,您不应该手动调用生命周期方法(onInit、onClose)

 @override
  void onClose() {
    B.onClose();
    B.dispose();
    super.onClose();
  }