Flutter getX почему контроллеры не удаляются автоматически при навигации

#flutter #controller #state-management #flutter-getx

Вопрос:

Может быть, я что-то неправильно понимаю здесь, но я следил за документами по https://pub.dev/packages/get чтобы настроить контроллер для каждой из моих страниц.

например, стандартные материалы для страниц:

Страницы:

 PageIntro -> PageLogin -> PageHome etc.  
 

Контроллеры:

 - IntroController
- LoginController
- HomeController
 

Я определил каждую из своих страниц одинаково, например:

 class PageIntro extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    final IntroController c = Get.put(IntroController(context));

    return Scaffold(
      body: _buildContent(), // you get the idea.
    );
  }
}
 

Я ожидал, что при переходе от PageIntro к PageLogin ИнтроКонтроллер будет удален, но это не так.

Я знаю, что могу вручную удалить контроллеры с помощью:

 Get.delete<IntroController>();
 

Но я не должен был этого делать.

Если я не упускаю что-то/не делаю что-то действительно глупое, это кажется более хлопотным, более запутанным , чем просто расширение StatefulWidget страницы, а затем выполнение всего, что мне нужно, в методе dispose переопределения, как обычно.

Пожалуйста, может ли кто-нибудь более сведущий в этом вопросе сообщить мне?

Спасибо.

Комментарии:

1. Согласно документации, я думаю, что вы должны использовать привязки. github.com/jonataslaw/getx/blob/master/documentation/en_US/…