
FlutterRules的模板
本文最后更新于 2025-04-29,文章内容可能已经过时。
FlutterRules
// 你是一名Flutter 应用专家 .cursorrules
将 Flutter 最佳实践和编码指南应用于 core
目录,重点关注常量、主题、工具和组件。
匹配路径:lib/core/**/*.*
在保持清晰代码原则的同时适应现有项目架构。
UI 和样式
使用 Material 组件。
统一主题:使用
ThemeData
应用一致的样式。使用 Flutter 3.x 特性和 Material 3 设计。
实现正确的空安全实践。
遵循正确的命名规范。
使用正确的组件组合。
保持组件小且专注。
尽可能使用
const
构造函数。实现正确的组件键。
遵循正确的布局原则。
// Flutter 最佳实践
在整个项目中应用通用的 Flutter 最佳实践,重点关注架构、设计和代码质量。
匹配路径:lib/**/*.*
在保持清晰代码原则的同时适应现有项目架构。
使用 Flutter 3.x 特性和 Material 3 设计。
实现带有 BLoC 模式的清晰架构。
遵循正确的状态管理原则。
使用正确的依赖注入。
实现正确的错误处理。
遵循平台特定的设计指南。
使用正确的本地化技术。
// 项目结构
// 注意:这是一个参考结构。请根据项目的现有组织进行调整
const projectStructure =
lib/
core/
constants/
theme/
utils/
widgets/
features/
feature_name/
data/
datasources/
models/
repositories/
domain/
entities/
repositories/
usecases/
presentation/
bloc/
pages/
widgets/
l10n/
main.dart
test/
unit/
widget/
integration/
// 编码指南
const codingGuidelines = `
使用正确的空安全实践
使用 Either 类型实现正确的错误处理
遵循正确的命名规范
使用正确的组件组合
使用 GoRouter 实现正确的路由
使用正确的表单验证
使用 BLoC 遵循正确的状态管理
使用 GetIt 实现正确的依赖注入
使用正确的资源管理
遵循正确的测试实践 `;
// 组件指南
const widgetGuidelines = `
保持组件小且专注
尽可能使用 const 构造函数
实现正确的组件键
遵循正确的布局原则
使用正确的组件生命周期方法
实现正确的错误边界
使用正确的性能优化技术
遵循正确的无障碍指南 `;
// 性能优化
当不需要状态时,优先使用
StatelessWidget
。使用
const
构造函数:如果组件是不可变的,使用const
来优化构建。
const performanceGuidelines = `
使用正确的图片缓存
实现正确的列表视图优化
使用正确的构建方法优化
遵循正确的状态管理模式
实现正确的内存管理
在需要时使用正确的平台通道
遵循正确的编译优化技术 `;
//状态管理
使用 Riverpod 实现高效的状态管理。
在 ViewModel 中管理状态,并将其与视图连接。
// 测试指南
const testingTestingGuidelines = `
为业务逻辑编写单元测试
为 UI 组件实现组件测试
使用集成测试进行功能测试
实现正确的模拟策略
使用正确的测试覆盖工具
遵循正确的测试命名规范
实现正确的 CI/CD 测试
// 功能指南
在 Flutter 功能模块中强制执行清晰架构、BLoC 模式和状态管理原则。
匹配路径:lib/features/**/*.*
在保持清晰代码原则的同时适应现有项目架构。
使用 Flutter 3.x 特性和 Material 3 设计。
实现带有 BLoC 模式的清晰架构。
遵循正确的状态管理原则。
使用正确的依赖注入。
实现正确的错误处理。
使用 BLoC 遵循正确的状态管理。
实现正确的依赖注入。
专注于 Flutter 功能模块的展示层相关的规则,包括 BLoC、页面和组件。
匹配路径:lib/features/**/presentation/**/*.*
在保持清晰代码原则的同时适应现有项目架构。
使用 Flutter 3.x 特性和 Material 3 设计。
使用正确的组件组合。
保持组件小且专注。
使用 GoRouter 实现正确的路由。
使用正确的表单验证。
实现正确的错误边界。
遵循正确的无障碍指南。
//软件架构
使用 MVVM(Model View ViewModel)
//关键规则
为了提升代码的可读性,每行代码的长度不应超过 80 个字符。
对于所有流程控制结构(
if
、for
、while
等),必须使用大括号{}
。积极使用注释来帮助理解与维护代码。
使用单引号
'
,避免使用双引号"
。
- 感谢你赐予我前进的力量