Для кто ищет это, следуя рекомендации Марка, I adapted rx-node fromStream
implementation for rxjs5.
import { Observable } from 'rxjs';
// Adapted from https://github.com/Reactive-Extensions/rx-node/blob/87589c07be626c32c842bdafa782fca5924e749c/index.js#L52
export default function fromStream(stream, finishEventName = 'end', dataEventName = 'data') {
stream.pause();
return new Observable((observer) => {
function dataHandler(data) {
observer.next(data);
}
function errorHandler(err) {
observer.error(err);
}
function endHandler() {
observer.complete();
}
stream.addListener(dataEventName, dataHandler);
stream.addListener('error', errorHandler);
stream.addListener(finishEventName, endHandler);
stream.resume();
return() => {
stream.removeListener(dataEventName, dataHandler);
stream.removeListener('error', errorHandler);
stream.removeListener(finishEventName, endHandler);
};
}).share();
}
так это работает или? Кого волнует, как часто он обновляется, если он работает – smnbbrv
@smnbbrv Несомненно, он работает нормально, но это RxJS4 и не совместим с RxJS5. – cartant
Вы можете взглянуть на [источник] (https://github.com/Reactive-Extensions/rx-node/blob/master/index.js#L45-L83), чтобы посмотреть, что потребуется, чтобы преобразовать его самостоятельно - реализация довольно маленькая. – cartant