我有一个可观察的:
messages: string[] = ['a', 'b', 'c'];
const source = from(messages)
Run Code Online (Sandbox Code Playgroud)
如何延迟它,以便当有人订阅它时,它会延迟 n 秒来发出项目?所以:
source.subscribe(i => console.log(i));
// output ...n seconds... 'a' ...n seconds... 'b' ...n seconds... 'c'
Run Code Online (Sandbox Code Playgroud)
您可以使用以下方法将流与间隔结合起来zip:
zip(
from(['a', 'b', 'c', 'd']),
interval(1000),
(a, b) => a
)
.subscribe(console.log);
Run Code Online (Sandbox Code Playgroud)
zip会将每个流的第 n 个元素合并到一个数组中。这就是我们使用选择器函数的方式:(a, b) => a。它确保仅使用第一个流中的元素。该interval流仅用于延迟发射。
| 归档时间: |
|
| 查看次数: |
2714 次 |
| 最近记录: |