Tree rxjs树搜索
我是rxjs新手,需要找到一种算法,通过树中的id查找节点。这是我最好的方法(可在中作为公共要点获得): 它找不到根,我只想走路,扔掉与id匹配的叶子,然后扔掉我发明的轮子Tree rxjs树搜索,tree,rxjs,Tree,Rxjs,我是rxjs新手,需要找到一种算法,通过树中的id查找节点。这是我最好的方法(可在中作为公共要点获得): 它找不到根,我只想走路,扔掉与id匹配的叶子,然后扔掉我发明的轮子 如何在第一级维护搜索? 是否有要按regexp筛选的运算符? 任何rxjs运算符都会进行递归查找? 提前感谢大家。好的,我不会详细介绍您的树示例,但我可以回答您的问题,这可能会帮助您解决一些问题 如何保持状态 一种简单的方法是将状态保存在临时对象中 Observable.of(1) .flatMap(nu
提前感谢大家。好的,我不会详细介绍您的树示例,但我可以回答您的问题,这可能会帮助您解决一些问题 如何保持状态 一种简单的方法是将状态保存在临时对象中
Observable.of(1)
.flatMap(number => Observable.of({ start: number, value: 'a' }))
.subscribe(({start, value}) => console.log(start + '/' + value)); // output: 1/a
是否有要按regexp筛选的运算符?
不,但是你可以自己轻松地那样做
let names$ = Observable.of('adam', 'amy', 'ben');
let regex = /a.*/;
names$.filter(name => regex.test(name)) // emits: 'adam', 'amy
任何rxjs运算符都会进行递归查找?
是的,有扩展操作符。下面是一个简单的例子,可以为您提供指导
Observable.of(3)
.expand(x => Observable.of(x-1))
.takeWhile(x => x >= 0); // emits: 3, 2, 1, 0
我的第一个问题是,为什么要让这段代码可见?没有特别的需要,因为我尝试将所有东西都实现为流的被动方法是新的。我想知道我是否能利用功能性(不可变、无副作用和声明性)加上反应性(elacticity)我的树模型的优势来管理,这与一个将随着时间无限增长的标签系统有关。我有很多解决方案,但我真的很好奇这个。。。
Observable.of(3)
.expand(x => Observable.of(x-1))
.takeWhile(x => x >= 0); // emits: 3, 2, 1, 0