我需要driver.findElement(By.linkText("Chennai, Tamilnadu")).click();
switchMap
:
Observables<Action>
,其中
this.actions$
.ofType('LOAD_SOURCES')
.switchMap((action: Action) =>
Stripe.card.createToken(
<StripeCardTokenData>{name: "PLACEHOLDER NAME"},
(status, response) {
}
)
);
如您所见,private actions$: Actions;
class Actions extends Observable<Action> {...}
export interface Action {
type: string;
payload?: any;
}
的第二个参数是我应该处理的回调函数。所以,我不知道在达到回调时返回一个新的动作,因为它已经通过了。它被称为observable。
回调的签名是:
createToken
正如你所看到的那样,createToken(data: StripeCardTokenData, responseHandler: (status: number, response: StripeCardTokenResponse) => void): void;
重新开始了!
如果根据响应数据达到回调,我怎么能创建一个Action项?
所以目标是返回另一个动作(但是当达到回调时:
=> void
我不知道我是否解释得那么好。
答案 0 :(得分:2)
如果我理解正确,你想从所有回调中创建一个observable。如果是,请查看bindCallback
。以下是文档的链接:http://reactivex.io/rxjs/class/es6/Observable.js~Observable.html#static-method-bindCallback
例如:
const log = (val, cb) => cb(val);
const trace = Rx.Observable.bindCallback(log);
trace('hello')
.subscribe(x => console.log(x));
&#13;
<script src="https://unpkg.com/rxjs/bundles/Rx.min.js"></script>
&#13;