Flutter:GetBuilder页面模板,可复用,视图,控制器分离

GetBuilder页面模板,之后都会在此基础上写页面。

view

js 复制代码
import 'package:flutter/material.dart';
import 'package:get/get.dart';

import 'index.dart';

class GoodsListPage extends GetView<GoodsListController> {
  const GoodsListPage({super.key});

  // 主视图
  Widget _buildView() {
    return const Center(
      child: Text("GoodsListPage"),
    );
  }

  @override
  Widget build(BuildContext context) {
    return GetBuilder<GoodsListController>(
      init: GoodsListController(),
      id: "goods_list",
      builder: (_) {
        return Scaffold(
          appBar: AppBar(title: const Text("goods_list")),
          body: SafeArea(
            child: _buildView(),
          ),
        );
      },
    );
  }
}

controller

js 复制代码
import 'package:get/get.dart';

class GoodsListController extends GetxController {
  GoodsListController();

  _initData() {
    update(["goods_list"]);
  }

  void onTap() {}

  @override
  void onInit() {
    super.onInit();
  }

  @override
  void onReady() {
    super.onReady();
    _initData();
  }

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

index 导包

js 复制代码
library goods_list;

export './controller.dart';
export './view.dart';

路由配置

js 复制代码
import '../pages/mall/goods_list/index.dart';
GetPage(
    name: "/GoodsListPage", page: () => GoodsListPage()
),
相关推荐
松☆36 分钟前
集成 Flutter 到 OpenHarmony(嵌入方式)实战:编写你的第一个混合页面
flutter
松☆42 分钟前
OpenHarmony 原生能力深度调用:从 Flutter 调用相机、定位与文件系统实战
数码相机·flutter
吃好喝好玩好睡好1 小时前
OpenHarmony+Electron+Flutter:构建轻量化VR/AR跨端交互应用指南
flutter·electron·vr
晚霞的不甘1 小时前
Flutter + OpenHarmony UI 设计规范:打造整齐、美观、一致的全场景体验
flutter·ui·设计规范
松☆1 小时前
OpenHarmony + Flutter 混合开发进阶:实现跨设备分布式数据同步与状态共享
分布式·flutter
ujainu1 小时前
Flutter入门:Dart基础与核心组件速成
javascript·flutter·typescript
吃好喝好玩好睡好1 小时前
OpenHarmony混合开发:Flutter+Electron实战
javascript·flutter·electron
克喵的水银蛇2 小时前
Flutter 通用表单组件封装:FormKit 一站式解决表单验证、状态管理与交互优化
flutter·microsoft·交互
ujainu2 小时前
Flutter性能优化实战:从卡顿排查到极致流畅
flutter·性能优化
克喵的水银蛇2 小时前
Flutter 通用下拉刷新上拉加载列表:PullRefreshList
flutter·下拉刷新·组件封装·上拉加载