JSX? -
function view(sources) {
const props$ = sources.props;
const titleVDom$ = Title(sources).DOM;
const calcVDom$ = Calculator(sources).DOM;
const vdom$ = props$
.mergeMap((props) => titleVDom$.map((title) => [ props, title ]))
.mergeMap((data) => calcVDom$.map((calc) => data.push(calc)))
.map((data) =>
<section className="hero is-fullheight is-primary">
<div className="hero-head">
</div>
<div className="hero-body">
{data[0].showCalc ? {data[2]} : {data[1]}}
</div>
<div className="hero-foot">
</div>
</section>
);
return vdom$;
}
, forkJoin:
function view(sources) {
const props$ = sources.props;
const titleVDom$ = Title(sources).DOM;
const calcVDom$ = Calculator(sources).DOM;
return Rx.Observable.forkJoin([
props$,
titleVDom$,
calcVDom$
]).map((data) =>
<section className="hero is-fullheight is-primary">
<div className="hero-head">
</div>
<div className="hero-body">
{data[0].showCalc ? {data[2]} : {data[1]}}
</div>
<div className="hero-foot">
</div>
</section>
);
}
, forkJoin Observables ( ) , mergeMap , , ( ) .