1.6 KiB
1.6 KiB
CancelToken 功能变更日志 / CancelToken Feature Changelog
[3.3.0] - 2026-01-31
🎉 新特性 / New Features
CancelToken 支持
- ✅ 配置开关:在
generator_config.yaml中配置generation.api.cancel_token_support: true启用 - ✅ 自动添加参数:启用后,所有 API 方法自动添加
@CancelRequest() CancelToken? cancelToken参数 - ✅ 向后兼容:默认关闭,不影响现有项目
📝 文档 / Documentation
- ✅ 新增
CANCELTOKEN_USAGE_GUIDE.md- 使用指南和最佳实践 - ✅ 更新
generator_config.template.yaml- 添加配置示例
🔧 技术细节 / Technical Details
修改的文件:
lib/core/config_repository.dart- 添加cancelTokenSupport配置解析lib/pipeline/generate/impl/retrofit_api/api_parameters.dart- 在_generateParameters()中添加 CancelToken 参数生成逻辑generator_config.template.yaml- 添加配置项说明
生成的参数格式:
@CancelRequest() CancelToken? cancelToken
💡 使用场景 / Use Cases
- 页面离开取消请求 - 避免内存泄漏和不必要的状态更新
- 用户主动取消 - 如搜索框输入时取消之前的搜索请求
- 超时控制 - 配合 Timer 实现自定义超时逻辑
- 批量取消 - 一个 CancelToken 可用于多个请求