@actyx-contrib/rx-pond 中文文档教程
RX Pond
import { RxPond } from '@actyx-contrib/rx-pond'
RxPond.from(myPond).observe(myFish).map(someFunction).subscribe(myCallback)`
Installation
RxPond 可用作 npm 包。
npm install @actyx-contrib/rx-pond
Overview
这个库为 Pond 提供了一个非常简单的 RXjs 适配器。 RxPond
类型提供所有 与常规 Pond
功能相同,只是接口 return Observable
where 有用。 最明显的例子是返回 Observable
的 RxPond.observe
函数 而不是回调。
要获得 RxPond
,有以下选项:
import { RxPond } from '@actyx-contrib/rx-pond'
// Create an RxPond from an existing Pond instance
const fromExisting = RxPond.from(myPond)
// Create an RxPond backed by a Pond with default parameters
const defaultRxPond = RxPond.default({
appId: 'com.example.rx-pond-example',
displayName: 'RX Pond Example',
version: '0.0.1',
})
// Provide custom parameters (same arguments as Pond.of)
const parameterizedRxPond = RxPond.of(
// Configure AppManifest
{
appId: 'com.example.rx-pond-example',
displayName: 'RX Pond Example',
version: '0.0.1',
signature: '<signature>'
}
// Configure connection options
{
actyxHost: 'localhost',
actyxPort: '4243',
onConnectionLost: () => console.error('connection to Actyx lost')
},
// Configure Pond options
{
fishErrorReporter: (err, fishId, detail) > console.error('fish error', err, fishId, detail)
}
)
Compatibility
这个库 version agnostic 与 RXjs 有关——它可以完美地工作在 5.x 和 6.x 上。
该库与 Pond V2 系列中的所有未来版本保持兼容。
RX Pond
import { RxPond } from '@actyx-contrib/rx-pond'
RxPond.from(myPond).observe(myFish).map(someFunction).subscribe(myCallback)`
Installation
RxPond is available as a npm package.
npm install @actyx-contrib/rx-pond
Overview
This library provides a very simple RXjs adapter for the Pond. The RxPond
type supplies all the same functions as the regular Pond
does, only with the interface return Observable
where useful. The most obvious example being the RxPond.observe
function that returns an Observable<S>
rather than taking a callback.
To get ahold of an RxPond
, there are these options:
import { RxPond } from '@actyx-contrib/rx-pond'
// Create an RxPond from an existing Pond instance
const fromExisting = RxPond.from(myPond)
// Create an RxPond backed by a Pond with default parameters
const defaultRxPond = RxPond.default({
appId: 'com.example.rx-pond-example',
displayName: 'RX Pond Example',
version: '0.0.1',
})
// Provide custom parameters (same arguments as Pond.of)
const parameterizedRxPond = RxPond.of(
// Configure AppManifest
{
appId: 'com.example.rx-pond-example',
displayName: 'RX Pond Example',
version: '0.0.1',
signature: '<signature>'
}
// Configure connection options
{
actyxHost: 'localhost',
actyxPort: '4243',
onConnectionLost: () => console.error('connection to Actyx lost')
},
// Configure Pond options
{
fishErrorReporter: (err, fishId, detail) > console.error('fish error', err, fishId, detail)
}
)
Compatibility
This library is version agnostic in regards to RXjs – it works flawlessly with both 5.x and 6.x.
This library remains compatible with all future releases in the Pond V2 line.