使用 Cycle.js,我试图创建一个视图,在给定一组数据点时呈现动态数量的组件。但是,我不知道如何创建重复视图。
我已经将所有内容都剥离回我认为它应该如何工作的最基本示例。希望有人能指出我所缺少的。
/*
Expected:
Given an array of data objects, create the following DOM
<div class="container">
<h1 class=".data">Element 1</h1>
<h1 class=".data">Element 2</h1>
<h1 class=".data">Element 3</h1>
<h1 class=".data">Element 4</h1>
...
</div>
Result:
<div class="container">
<h1 class=".data">Element 9</h1>
</div>
*/
function view( data$ ){
return Rx.Observable.of(
div('.container', data$.map( data =>
h1('.data', `Element: ${ data.id }`)
))
);
}
function main( sources ) {
// Create an array of objects
const arr = [];
for( let i = 0; i < 10; i++ ){
arr.push({
id: `id ${i}`
})
}
// Convert array to an observable
const data$ = Rx.Observable.from(arr);
const vtree$ = view( data$ );
return {
DOM: vtree$
};
}
const drivers = {
DOM: CycleDOM.makeDOMDriver('#mountPoint')
};
Cycle.run( main, drivers );