使用RxJS如何在观察者上传递新属性?所以基本上我希望道具“customProp”可以被观察到
const { Observable } = require('rxjs');
const observable = Observable.create(function (observer) {
console.log(observer.customProp); //How to get this working?
observer.next(1);
observer.next(2);
observer.next(3);
setTimeout(() => {
observer.next(4);
observer.complete();
}, 1000);
});
console.log('just before subscribe');
observable.subscribe({
next: x => console.log('got value ' + x),
error: err => console.error('something wrong occurred: ' + err),
complete: () => console.log('done'),
customProp: 'Hello World RxJS',
});
console.log('just after subscribe');
---->>> Output
just before subscribe
undefined //How can I get this working, please?
got value 1
got value 2
got value 3
just after subscribe
=> undefined
got value 4
done
添加更多的信息-所以基本上,我试图创建一个冷可观察的,其中制片人需要一个道具,应该来自订户
//Cold observable
var coldObservable = new Observable((observer) => {
var myProducerObj = new MyProducer();
myProducerObj.executeQuery(observer.customProp);
// How could we get customProp over here?
});
添加用法信息--coldObservable是DB连接函数,customProp是需要在DB上执行的查询
如果不扩展可观察的
类,这是不可能的,这是不需要的。它可以是工厂功能:
const createObservableWithCustomProp = (customProp, observer) => {
return new Observable((observer) => {
var myProducerObj = new MyProducer(customProp);
...
});
};
通常很少需要手动构造观测值,因为RXJSAPI提供了丰富的特性集来创建、转换和组合观测值。
问题内容: 我试图找到定义可以以一般方式使用的组件的正确方法: 当然,可以想象并在父组件和子组件之间进行渲染的逻辑。 对于这个问题,这是一个虚拟的实现: 问题是,每当您用于定义包装器组件时,如何将某些属性传递给其所有子组件? 问题答案: 用新道具克隆Children 您可以使用React.Children遍历子级,然后使用React.cloneElement使用新的道具(浅合并)克隆每个元素,例如
我是一个相当新的反应,这是一个我正在努力解决的问题。
问题内容: 我正在尝试找到定义可以以一般方式使用的某些组件的正确方法: 当然,您可以想象并作为该逻辑的示例,在父组件和子组件之间存在一种渲染逻辑。 对于这个问题,这是一个虚拟的实现: 问题是,每当您用于定义包装器组件时,如何将某些属性传递给其所有子组件? 问题答案: Cloning children with new props 您可以使用React.Children遍历子级,然后使用React.
在角度分量的顶部有以下初始化。 在我的组件中的某个地方,我使用选择器对Ngrx存储进行以下调用,以获取可观测数据。所有这些都很好,我得到了我想要的数据。 我需要知道这个可观察的什么时候完成。我需要设置一个布尔值,当所有可观察到的数据都试图完成时,它将关闭加载指示器。这是通过Web服务完成的。 因为可观测的源来自其他地方,所以我无法挂起“完整”回调
我使用的是dev-express中的react-grid库,库中有一个表组件,我们可以向它传递单元格组件,在CustomCell中,我使用的是Material UI中的菜单 在上述情况下,菜单工作良好, 但是我想要传递道具到这个组件,我尝试了以下操作 在这种情况下菜单不工作,我想知道是否有一个替代的方法来实现第二种情况。
组件具有变量作为观察者: 当