$ evalAsync和$ applyAsync有什么区别?我的理解是,当我从指令使用$ evalAsync时,表达式将在浏览器呈现之前进行评估.
举个例子,如果我想滚动到页面上的某个特定位置而不显示跳转到该位置,我可以使用它来滚动到该位置,因为它在浏览器渲染之前触发,这个视觉错误将是不见了.
但是,applyAsync的目的是什么?什么时候使用一个而不是另一个?
我有一个子节点进程,每24小时在CRON上运行一次.当进程开始时,它会读取一些排队的数据并将数据推送到某些转换流中.然后,该流充当反向多路复用器,并将流分成多个流,最终解析但它们都是异步的.
所有这些流完成后,我需要终止我创建的子进程.我的问题是,你怎么知道所有的流都完成了?
我曾尝试使用EventEmitter的'finish'事件,但是当第一个反向多路复用流完成时(好像是满口:) :)这似乎被捕获了.
基于承诺的方法.所以这种方法有效,但我认为有一种更简单的方法来做这样的事情.基本上,这导致为每个反向多路复用管道创建承诺,并且当每个管道完成时我们解决该承诺.然后,当所有承诺都已解决时,会触发一个事件,我们会在其他地方捕获该事件以终止该过程.
我正在尝试覆盖 2 个视频元素,其中一个直接位于另一个之上。显然,顶部的一个会比另一个小,这样两者都可见。到目前为止,我唯一能找到的就是在视频上覆盖文本,但大多数情况下,我看到的示例都使用与页面顶部的硬编码距离来实现这一点。
这是我尝试过的:
HTML:
<div class='video-container'>
<video class='userVideo' id="localVideo" autoplay></video>
<video class='peerVideo' id='peerVideo' autoplay></video>
</div>
Run Code Online (Sandbox Code Playgroud)
CSS:
.userVideo {
height: 200px;
width: 200px;
float: left;
border:5px solid orange;
position: absolute;
top: 100px;
}
.peerVideo {
height: 200px;
width: 200px;
border:5px solid blue;
}
Run Code Online (Sandbox Code Playgroud)
到目前为止,我唯一能够实现的是文本 div 与单个视频重叠。有没有办法重叠 2 个视频,甚至将一个视频嵌套在另一个视频中?