import{_ as e,c as d,e as o,o as a}from"./app-DlzW8FTI.js";const s={};function r(n,t){return a(),d("div",null,t[0]||(t[0]=[o('
课程服务(LessonsService)是 ClassIsland 的核心服务,用于处理课表信息和进行主循环,插件可以从这个服务获取许多课表状态信息(如当前科目、当前课表等)。
课程服务具有许多属性,您可以在获取服务后直接在代码里使用这些属性,也可以直接将这些属性绑定到界面上。由于课程服务实现了 INotifyPropertyChanged 接口,当这些属性值发生修改时,前端也会自动更新。
课程服务具有以下属性:
| 属性名 | 类型 | 说明 |
|---|
| CurrentSubject | Subject? | 当前所处时间点的科目。如果没有加载课表,则为 null。 |
| NextClassSubject | Subject | 下一节课(下一个上课类型的时间点)的科目。 |
| CurrentState | TimeState | 当前时间点状态。 |
| CurrentTimeLayoutItem | TimeLayoutItem | 当前所处的时间点。 |
| CurrentClassPlan | ClassPlan? | 当前加载的课表。如果当前没有课表,则为 null。 |
| NextBreakingTimeLayoutItem | TimeLayoutItem | 下一个课间休息类型的时间点。 |
| NextClassTimeLayoutItem | TimeLayoutItem | 下一个上课类型的时间点。 |
| CurrentSelectedIndex | int | 当前所处时间点的索引。 |
| OnClassLeftTime | TimeSpan | 距离上课剩余时间。 |
| OnBreakingTimeLeftTime | TimeSpan | 距下课剩余时间。 |
| IsClassPlanEnabled | bool | 是否启用课表。 |
| IsClassPlanLoaded | bool | 是否已加载课表。 |
| IsLessonConfirmed | bool | 是否已确定当前时间点。 |
',8)]))}const l=e(s,[["render",r]]),i=JSON.parse('{"path":"/dev/lessons-service.html","title":"课程服务","lang":"zh-CN","frontmatter":{"description":"课程服务 课程服务(LessonsService)是 ClassIsland 的核心服务,用于处理课表信息和进行主循环,插件可以从这个服务获取许多课表状态信息(如当前科目、当前课表等)。 属性 课程服务具有许多属性,您可以在获取服务后直接在代码里使用这些属性,也可以直接将这些属性绑定到界面上。由于课程服务实现了 INotifyPropertyChang...","head":[["script",{"type":"application/ld+json"},"{\\"@context\\":\\"https://schema.org\\",\\"@type\\":\\"Article\\",\\"headline\\":\\"课程服务\\",\\"image\\":[\\"\\"],\\"dateModified\\":\\"2025-05-18T06:46:05.000Z\\",\\"author\\":[{\\"@type\\":\\"Person\\",\\"name\\":\\"ClassIsland 社区\\",\\"url\\":\\"https://classisland.tech\\"}]}"],["meta",{"property":"og:url","content":"https://docs.classisland.tech/dev/lessons-service.html"}],["meta",{"property":"og:site_name","content":"ClassIsland 文档"}],["meta",{"property":"og:title","content":"课程服务"}],["meta",{"property":"og:description","content":"课程服务 课程服务(LessonsService)是 ClassIsland 的核心服务,用于处理课表信息和进行主循环,插件可以从这个服务获取许多课表状态信息(如当前科目、当前课表等)。 属性 课程服务具有许多属性,您可以在获取服务后直接在代码里使用这些属性,也可以直接将这些属性绑定到界面上。由于课程服务实现了 INotifyPropertyChang..."}],["meta",{"property":"og:type","content":"article"}],["meta",{"property":"og:locale","content":"zh-CN"}],["meta",{"property":"og:updated_time","content":"2025-05-18T06:46:05.000Z"}],["meta",{"property":"article:modified_time","content":"2025-05-18T06:46:05.000Z"}]]},"git":{"createdTime":1737600842000,"updatedTime":1747550765000,"contributors":[{"name":"WRC","username":"WRC","email":"hello_wrc@outlook.com","commits":2,"url":"https://github.com/WRC"},{"name":"dong","username":"dong","email":"xiaodong1919810@163.com","commits":1,"url":"https://github.com/dong"},{"name":"Dongsx","username":"Dongsx","email":"xiaodong1919810@163.com","commits":1,"url":"https://github.com/Dongsx"},{"name":"HelloWRC","username":"HelloWRC","email":"hellowrc@outlook.com","commits":1,"url":"https://github.com/HelloWRC"},{"name":"wang-lu-yuan","username":"wang-lu-yuan","email":"wang-lu-yuan@github.com","commits":1,"url":"https://github.com/wang-lu-yuan"},{"name":"wjj-8283","username":"wjj-8283","email":"wjj@github.com","commits":1,"url":"https://github.com/wjj-8283"}]},"readingTime":{"minutes":1.13,"words":340},"filePathRelative":"dev/lessons-service.md","autoDesc":true}');export{l as comp,i as data};