源代码仓库:
https://github.com/SAP/openui5
源代码位置:
SupportAPI.js 详细分析
模块定位
SupportAPI.js处在sap.ui.fl这个库的支持诊断链路里,名字看起来像一个普通的工具模块,实际扮演的是一个很关键的中间层角色。它自己并不负责计算所有灵活性数据,也不直接实现复杂的数据整理算法,而是把sap.ui.fl内部已经存在的若干能力,用一种对支持工具更友好的方式重新包装出来,让诊断插件能够稳定地拿到当前应用的组件实例,并在合适的运行容器中触发数据采集。
换句话说,这个文件更像一个总调度台,而不是车间里的加工机床。真正生产数据的,是getAllUIChanges、getFlexObjectInfos、getFlexSettings、getChangeDependencies这些内部模块;真正面向最终诊断界面的,是FlexibilityDataExtractor和更外层的FlexibilityPlugin。SupportAPI.js位于两者之间,承担了桥接、定位、分发、容器兼容这几项任务。