Skip to content
| Marketplace
Sign in
Visual Studio Code>Snippets>Flutter GetX GeneratorNew to Visual Studio Code? Get it now.
Flutter GetX Generator

Flutter GetX Generator

virtheart

| (0) | Free
快速生成Flutter GetX项目结构、Page、Controller等模板代码
Installation
Launch VS Code Quick Open (Ctrl+P), paste the following command, and press enter.
Copied to clipboard
More Info

Flutter GetX Generator - VSCode 插件

一个强大的 VSCode 插件,用于快速生成 Flutter GetX 项目的样板代码,提升开发效率。

✨ 功能特性

1. 🚀 初始化项目结构

一键创建标准的 GetX 项目目录结构并生成基础文件:

目录结构:

lib/
├── controllers/
│   ├── theme_controller.dart         # 主题管理
│   └── language_controller.dart      # 语言管理
├── models/
├── pages/
├── routes/
│   ├── app_routes.dart               # 路由常量
│   └── app_pages.dart                # 路由配置
├── services/
├── widgets/
│   └── common/
└── core/
    ├── bindings/
    │   └── initial_binding.dart      # 全局绑定
    ├── constants/
    │   └── app_constants.dart        # 应用常量
    ├── services/
    ├── themes/
    │   └── app_theme.dart            # 主题配置
    └── translations/
        └── app_translations.dart     # 国际化

自动配置依赖:

  • ✅ 自动更新 pubspec.yaml 添加常用依赖
  • ✅ dio - HTTP 客户端
  • ✅ shared_preferences - 本地存储
  • ✅ cached_network_image - 图片缓存
  • ✅ connectivity_plus - 网络连接检测
  • ✅ intl - 国际化支持
  • ✅ 其他常用包...

2. 📄 创建 Page(页面三件套)

自动创建完整的页面文件结构:

  • {name}_page.dart - 页面 UI
  • {name}_controller.dart - 业务逻辑控制器
  • {name}_binding.dart - 依赖注入绑定

同时自动更新路由文件:

  • 在 app_routes.dart 中添加路由常量
  • 在 app_pages.dart 中添加 GetPage 配置

3. 🎮 创建 Controller

快速创建单独的 Controller 文件,包含基础的生命周期方法。

4. 🔧 创建 Service

创建 GetxService 服务类,用于全局服务管理。

5. 📦 创建 Model

生成数据模型类,包含 fromJson 和 toJson 方法。

📦 安装

方式一:从 VSIX 安装(推荐)

  1. 下载 .vsix 文件
  2. 在 VSCode 中按 Ctrl+Shift+P (Windows/Linux) 或 Cmd+Shift+P (Mac)
  3. 输入 Extensions: Install from VSIX...
  4. 选择下载的 .vsix 文件

方式二:从源码编译

cd flutter-getx-plugins/vscode-extension
npm install
npm run compile

然后在 VSCode 中按 F5 调试运行。

🚀 使用方法

🎯 右键菜单使用(推荐⭐)

所有功能都可以通过右键菜单快速访问!

  1. 在项目资源管理器中,右键点击任意文件夹
  2. 选择 "GetX" 子菜单
  3. 选择需要的功能:
    • ✨ 初始化项目结构
    • ✨ 创建Page
    • ✨ 创建Controller
    • ✨ 创建Service
    • ✨ 创建Model
  4. 输入名称,回车完成

使用示例:

右键 lib/pages 文件夹
  → 选择 "GetX" 
    → 选择 "创建Page"
      → 输入 "home"
        → 完成!✅

⌨️ 命令面板使用

如果你更喜欢键盘操作,也可以使用命令面板:

  1. 按 Ctrl+Shift+P (Windows/Linux) 或 Cmd+Shift+P (Mac)
  2. 输入对应的命令:
    • 初始化项目结构
    • 创建Page
    • 创建Controller
    • 创建Service
    • 创建Model
  3. 输入名称,回车完成

📝 命名规范

  • 输入格式:使用小写字母和下划线(snake_case),如:user_profile、home
  • 生成文件:自动转换为 snake_case,如:user_profile_page.dart
  • 类名:自动转换为 PascalCase,如:UserProfilePage、UserProfileController

🎯 示例

创建 Home 页面

输入:home

生成文件:

lib/pages/home/
├── home_page.dart          // HomePage 页面类
├── home_controller.dart    // HomeController 控制器
└── home_binding.dart       // HomeBinding 绑定类

自动更新路由:

// app_routes.dart
class AppRoutes {
  static const String home = '/home';
}

// app_pages.dart
GetPage(
  name: AppRoutes.home,
  page: () => const HomePage(),
  binding: HomeBinding(),
),

创建 UserProfile 页面

输入:user_profile

生成:

lib/pages/user_profile/
├── user_profile_page.dart
├── user_profile_controller.dart
└── user_profile_binding.dart

🔧 生成的代码模板

Page 模板

import 'package:flutter/material.dart';
import 'package:get/get.dart';
import 'package:your_app/pages/home/home_controller.dart';

class HomePage extends GetView<HomeController> {
  const HomePage({super.key});

  @override
  Widget build(BuildContext context) {
    return Scaffold(
      appBar: AppBar(
        title: const Text('Home'),
      ),
      body: const Center(
        child: Text('Home Page'),
      ),
    );
  }
}

Controller 模板

import 'package:get/get.dart';

class HomeController extends GetxController {
  @override
  void onInit() {
    super.onInit();
  }

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

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

Binding 模板

import 'package:get/get.dart';
import 'package:your_app/pages/home/home_controller.dart';

class HomeBinding extends Bindings {
  @override
  void dependencies() {
    Get.lazyPut<HomeController>(() => HomeController());
  }
}

🛠️ 系统要求

  • VSCode 1.80.0 或更高版本
  • Flutter 项目(需要有 lib 目录和 pubspec.yaml)
  • GetX 依赖已配置在 pubspec.yaml 中

📄 许可证

MIT License

🤝 贡献

欢迎提交 Issue 和 Pull Request!

📞 联系方式

如有问题或建议,请提交 Issue。


享受高效的 Flutter GetX 开发体验! 🎉

  • Contact us
  • Jobs
  • Privacy
  • Manage cookies
  • Terms of use
  • Trademarks
© 2025 Microsoft