目标组件的字段标识。
该字段标识用于在 HijackedComponent.infect 或 HijackedComponent.compose 方法中指定需要被改造的目标宜搭组件。
组件的选项列表。
每个选项包含 text(显示文本)与 value(实际值)两个字段,适用于
下拉框、单选框等宜搭组件。该列表通常由 HijackedComponent.main
方法计算得出,并通过 VirtualComponent.setOptions 注入到目标组件中。
时间语义化预设配置项。
该配置项在实例化时传入,供 HijackedComponent.main 方法使用, 用于控制学年、学期、周次等时间相关组件的计算基准。
组件的默认值。
该值通常由 HijackedComponent.main 方法计算得出,并通过 VirtualComponent.setDefaultValue 注入到目标组件中。
将当前组件与另一个组件进行组合,生成新的虚拟组件。
组合逻辑如下:
例如,若当前组件值为 "2023-2024学年",另一组件值为 "第一学期",
则组合后的值为 "2023-2024学年第一学期"。
另一个劫持组件实例。
组合后的虚拟组件实例。
将当前劫持组件转换为虚拟组件,并绑定到指定的目标字段。
该方法会创建一个 Infection.VirtualComponent 实例,并将当前组件的 值、选项与目标字段标识注入其中。返回的虚拟组件可进一步调用 VirtualComponent.setDefaultValue 与 VirtualComponent.setOptions 完成实际改造。
目标宜搭组件的字段标识,例如 "selectField_xxx"。
绑定后的虚拟组件实例。
受保护main受保护生成学期选项列表与默认值。
选项列表固定为 ["第一学期", "第二学期"],默认值通过
Utils.SchoolDays.benchmarkSemester 计算得出。
当前组件实例。
静态of创建并初始化一个劫持组件实例。
工厂方法会创建子类实例,并将传入的预设配置合并到 HijackedComponent.preset 中,然后自动调用 HijackedComponent.main 完成初始化。
具体的劫持组件子类类型。
可选的时间语义化预设配置项,将传入组件实例供其主逻辑使用。
已完成初始化的组件实例。
学期选择组件。
该组件基于 Utils.SchoolDays 计算当前学期,并生成
["第一学期", "第二学期"]的选项列表,默认值为当前学期。添加于
26.7.1