## 前言
本文主要介绍 http://10.0.16.26:1042/guest/1/51305/510770/1?sign=test&t=1 ,地址中各个参数的含义以及项目中对应的代码解释。
## 路由匹配
### 匹配原则
在封装的web框架中,路由定义有两种,一种是config/routes.js,
```
module.exports = {
'get /':"index.showHome",
'post /login':'index.getDate'
}
```
另一种是直接在控制器中定义全局的路由的meta
```
module.exports.meta ={
getDate:{
url:'/login',
methods:['post'],
bodyParser:true
}
}
```
备注:模块说明地址:[https://npm.taobao.org/package/kk-koa-framework](https://npm.taobao.org/package/kk-koa-framework)
### 匹配结果
#### 控制层在/src/controller/standard.js
匹配到的为live,路由为:/:identity/:userId/:lessonId/:periodId/:partId,其中identity为变量,代表身份,为guest的时候只能看到课件,为teacher的时候,可以看到互动白板,使用的视图为index,主要内容:改变语言;websocket的连接纠正;过滤视频列表
其中identify的有效值,teacher/student/guest,会定义在window.system.identify;guest的时候没有工具栏,学生的时候显示部分工具,老师显示全部工具栏,翻页的时候显示全部。
第二个参数为lesson ID,也就是51305;
第三个参数为课时id,也就是510770;
第四个参数为partid,为1 ;
#### /index.js
另外也会进入到/index.js 中,匹配到的为index,路由为/:periodId,使用的视图为vroom,主要内容,返回libs的资源包。
## 页面
页面在views/index.pug中,其中div的关键属性data-entry-class="Main" 代表了白鹭引擎的入口是整个白板项目src项目Main.ts。
其中有个方法是控制是否显示控制板的,
```
// 控制system中的控制面板的值改变
window.showControlPanel = function(flag){
if(window.system){
window.system.controlPanel = flag
}
}
// online/vroom直播中 根据等级和是否是学生 去执行window.showControlPanel方法,改变window.system.controlPanel 的值。
if(this.isLv2 && this.isStudent){
LessonAgoraSubject.next({
type:"controlState",
v:0
})
window.showControlPanel(0)
}
```
- 相关资源链接
- 米乐星球小程序内调研
- 项目结构说明
- 交互课件说明
- server项目说明
- 项目说明
- 项目启动
- app.js做的事情
- 获取互动课件的地址
- 分析互动课件地址的参数
- policy目录--lesson.js
- 解析ppt--api/lesson.js
- 信令中的key:template
- 信令中的key:media
- kk-talkee-engine.js
- Message
- 课件模板页的识别过程
- 解析课件模板的源文件
- 场景与模板的对应关系
- 所有场景的基类
- choiceScence为例
- 注意事项
- ws
- online项目的说明
- online消息
- 课件编辑项目
- 资源链接
- 基本项目信息
- electron项目结构分析
- ipc
- 模板题组
- 普通题组
- 游戏题组
- 课件导出内容分析
- 课件模板分类明细
- 图片题
- 视频题
- 音频题
- 选择题
- 判断题
- 转盘
- 筛子
- 图层拖拽
- 动画题
- 翻拍题
- 语音题
- 201908变更
- 课件制作流程分析
- 菜单配置
- 入口操作
- 定义模板布局与初始化
- 选择素材
- 导出过程
- egret
- interface
- ad选择器模板
- ab选择器模板
- 图层拖拽模板
- 判断题模板
- xml
- 转盘
- events
- components
- 父类组件
- 基本组件
- 判断题组件
- 龙骨动画调研
- 基本了解
- 产品原型
- 白板Client项目
- 消息类型
- 白板项目分析
- 入口