用途:修复 UI5 linter 的 no-deprecated-api 规则报出、但无法自动修复的已弃用控件、类、接口、类型和属性问题,适用于 JS 控制器、XML 视图与组件元数据。
主要能力:处理已弃用类(如 sap.ui.commons.* 换为 sap.m.*、sap.m.DateTimeInput 拆分为 DatePicker 与 TimePicker)、已弃用属性(如 sap.m.Button 的 blocked 改为 enabled,逻辑取反)、已弃用接口与类型(更新 metadata),以及 XML 视图中的元素与属性替换。
使用方式:先运行 npx @ui5/linter --details 获取替代文档链接,再依据错误信息定位弃用项,通过 UI5 MCP Server 的 get_api_reference 工具或资料中的替换表查找替代 API,然后修改导入、类名、属性或元数据,最后重跑 linter 验证。
限制:p13n/个性化相关控件(如 sap.m.P13nDialog、sap.m.TablePersoDialog、sap.ui.table.TablePersoController 等)不做自动迁移,需人工按 UI5 文档改造;部分控件无直接替代(如 sap.m.MultiEditField、sap.ui.unified.Shell 系列),需自定义或重新设计;属性替换可能存在逻辑反转,替换库的 API 也可能不同。相关技能:行模式问题用 fix-table-row-mode,部分弃用 API 用 fix-partially-deprecated-apis。