Skip to content

flu-cli V1 → V2 迁移指南

📋 快速对照表

命令变化

V1 命令V2 命令说明
flu-cli create -n my_app -m normalflu-cli new my_app --template modular✅ 推荐
flu-cli create -n my_app -m normalflu-cli create my_app --template modular✅ 兼容(V2 参数)

参数对照

V1 参数V2 参数示例
-n, --project-name <name>[project-name]new my_app
-m, --template-type <type>-t, --template <type>--template modular
-s, --state-manager <type>-s, --state <type>--state getx
-d, --parent-dir <path>-d, --dir <path>--dir ~/projects

模板名称映射

V1 模板V2 模板说明
onlylite轻量级
minmodular模块化
normalmodular模块化
procleanClean架构

状态管理映射

V1V2说明
statedefault默认State
GetXgetxGetX (小写)

🔄 常见场景迁移

场景 1:创建基础项目

V1:

bash
flu-cli create -n my_app -m normal -s GetX

V2 (推荐):

bash
flu-cli new my_app --template modular --state getx

V2 (兼容):

bash
flu-cli create my_app --template modular --state getx

场景 2:指定存放目录

V1:

bash
flu-cli create -n my_app -m pro -s GetX -d ~/projects

V2:

bash
flu-cli new my_app --template clean --state getx --dir ~/projects

场景 3:使用轻量模板

V1:

bash
flu-cli create -n my_app -m min

V2:

bash
flu-cli new my_app --template modular

场景 4:完整参数

V1:

bash
flu-cli create -t app -m pro -s GetX -n my_flutter_app -p com.example.myapp -d ~/projects -i vscode

V2:

bash
flu-cli new my_flutter_app --template clean --state getx --dir ~/projects

注意: V2 不再支持 -p (包名) 和 -i (IDE) 参数,这些由交互式创建时询问。


⚠️ 不再支持的 V1 功能

命令行参数

以下 V1 参数在 V2 中不再通过命令行指定

V1 参数V2 替代方案
-t, --project-type交互式选择
-p, --package-name交互式输入或使用默认值
-i, --ide项目创建后手动打开
-f, --flutter-sdk使用系统环境变量

为什么移除?

  1. 简化命令行:减少参数复杂度
  2. 交互体验:V2 提供更好的交互式引导
  3. 常用优先:保留最常用的参数

🎯 V2 新增功能

V2 不仅是参数变化,还带来了新功能:

1. 新命令

bash
# 添加组件(V1 不支持)
flu-cli add page profile
flu-cli add widget custom_button
flu-cli add service api

# 模板管理(V1 不支持)
flu-cli templates
flu-cli templates lite

# 缓存管理(V1 不支持)
flu-cli cache clean

2. 更好的交互体验

bash
# V2 支持交互式创建
flu-cli new
# 会逐步询问:项目名称、模板类型、状态管理等

3. 远程模板支持

bash
# 使用远程模板(V1 依赖 Git)
flu-cli new my_app --template modular --remote

📝 自动化脚本迁移

CI/CD 脚本示例

V1 脚本:

bash
#!/bin/bash
flu-cli create -n my_app -m pro -s GetX -d ./output
cd output/my_app
flutter pub get
flutter build apk

V2 脚本:

bash
#!/bin/bash
flu-cli new my_app --template clean --state getx --dir ./output
cd output/my_app
flutter pub get
flutter build apk

🔧 常见问题

Q1: 我可以继续使用 create 命令吗?

A: 可以!但需要使用 V2 的参数格式:

bash
flu-cli create my_app --template modular --state getx

Q2: V1 和 V2 可以同时安装吗?

A: 可以!使用 npm dist-tag:

bash
npm install -g flu-cli@1  # 安装 V1
npm install -g flu-cli@2  # 安装 V2(或 flu-cli@latest)

Q3: 如何查看当前版本?

A:

bash
flu-cli --version

Q4: 我的项目用 V1 创建,可以用 V2 管理吗?

A: 可以!V2 的 add 命令可以向任何 Flutter 项目添加代码:

bash
cd my_v1_project
flu-cli add page settings

Q5: 如果我需要 V1 的完整功能怎么办?

A: 安装 V1 版本:

bash
npm install -g flu-cli@1
flu-cli create -n my_app -m pro -s GetX

📚 进一步学习


💡 迁移建议

  1. 新项目:直接使用 V2 语法
  2. 旧脚本:逐步更新为 V2 语法
  3. 学习成本:参数变化不大,10分钟即可掌握
  4. 遇到问题:查看文档或提 Issue

最后更新: 2025-11-25

Released under the MIT License.