前言
我们之前主要精力是放在了单个pdf和视频的跑通情况
目前我们完成了
1.自动执行dialog
2.监听并且自动关闭dialog
那我们要把所有的衔接到一起
开始
之前知道我们获取了所有dom的idlist直接传递给了AutoExecteChaprterMission函数
而这个函数是一个async函数
在await函数的时候会阻塞,我们先通过阻塞得到一个章节的所有小节内容
然后在循环小节内容,await每个小节等待结束
这样的话小节ExecteContentMission也要返回一个promise让其await
async function ExecteContentMission(Contet){
return new Promise(async (resolve,reject)=>{
await OpenOriginDialog(Contet)
//执行相关内容
resolve()
})
}
我们默认之前把视频的监听之类的全部丢给OpenOriginDialog函数里了
这样的话我们直接在内部也将其改造成promise
然后在ExecteContentMission里进行await
如果OpenOriginDialog等待await结束完毕后
视频和pdf一定是刷完的了
然后直接resolve即可
这里没有直接返回OpenOriginDialog的promise是为了方便以后出现问题再进行二次封装
而OpenOriginDialog的任务之前也叙述的差不多了
在接收到lhd_close消息后直接解除监听,然后删除元素,最后我们直接resolve函数
让await继续往下走即可
那我们就完成了整个脚本的逻辑了
根据测试目前基本已经完全跑通
出现问题再哪里有问题点哪里就好了
后续会提供代码(为了防止伸手党会阉割一小部分,也算一个小课后作业了!)
结语
撒花