有没有一种方法可以通过管道运算符来跟踪值?
举一个具体的例子,让我说:
通过数据流 S :
然后将它们合并并利用我创建的对象。
基本上,
function myFunc()
local name = debug.getinfo(1, "n").name
print(debug.traceback("Stack trace"))
return name
end
对此事的任何投入将不胜感激。
注意:如果可能的话,我不希望通过在顶部创建一个对象来保持我需要的值。
答案 0 :(得分:1)
您只需重组操作员并将memorized
设为局部变量即可轻松实现:
const data = from([1, 2, 3]).pipe(
// Memorize here
mergeMap(memorized => req1(memorized).pipe(
flatMap(a => a),
map(b => syncOp(b)),
map(c => req2(c)),
flatMap(d => d),
map(e => ({id: memorized, value: e}))
));
merge(data).subscribe(f => console.log(f.id, f.value));