【问题标题】:GetX controller not found未找到 GetX 控制器
【发布时间】:2021-12-11 12:55:45
【问题描述】:

我有一个用户文件夹,在文件夹内:

  1. 绑定
  2. 控制器
  3. 观看次数

在我的绑定文件中,我写了

Get.lazyPut<UserController>(
      () => UserController(),
    );

在我的视图文件中,我尝试调用 controller.count 并且有一个错误说找不到 UserController。 如果我将此代码添加到我的视图文件中,那么它可以工作。我不明白为什么我的绑定不起作用。

final UserController controller = Get.put(UserController());

编辑: 我找到了这个问题的答案。 我没有在我的视图文件中使用 GetBuilder。这就是为什么它一直说找不到我的控制器。

【问题讨论】:

    标签: flutter dart flutter-getx


    【解决方案1】:

    我认为您必须在视图和绑定之间建立联系。您可以像这样在GetMaterialApp 中执行此操作:

    getPages: [
      GetPage(
        name: '/',
        page: () => HomeView(),
        binding: HomeBinding(),
      ),
      GetPage(
        name: '/details',
        page: () => DetailsView(),
        binding: DetailsBinding(),
      ),
    ];
    

    或者当你导航到一个页面时:

    Get.to(Home(), binding: HomeBinding());
    Get.to(DetailsView(), binding: DetailsBinding())
    

    更多:https://chornthorn.github.io/getx-docs/dependency-management/binding/

    【讨论】:

    • 我使用 get_cli 所以你提到的两个页面都是自动创建的。我发现我的问题......没有使用getbuilder lmao。感谢您的帮助!
    • 不用担心,很高兴您发现了问题。
    猜你喜欢
    • 2022-01-23
    • 2021-08-09
    • 1970-01-01
    • 2019-07-12
    • 1970-01-01
    • 1970-01-01
    • 2021-08-25
    • 2021-05-11
    • 2016-10-12
    相关资源
    最近更新 更多