2017-11-04 18:40:34 +02:00
|
|
|
const { ItemList } = require('./ItemList.min.js');
|
|
|
|
|
|
|
|
class NoteListComponent extends React.Component {
|
|
|
|
|
|
|
|
itemRenderer(index, item) {
|
2017-11-05 01:27:13 +02:00
|
|
|
const onClick = () => {
|
|
|
|
this.props.dispatch({
|
|
|
|
type: 'NOTES_SELECT',
|
|
|
|
noteId: item.id,
|
|
|
|
});
|
|
|
|
}
|
|
|
|
|
2017-11-04 18:40:34 +02:00
|
|
|
let classes = ['item'];
|
|
|
|
classes.push(index % 2 === 0 ? 'even' : 'odd');
|
2017-11-05 01:27:13 +02:00
|
|
|
return <div onClick={() => { onClick() }} className={classes.join(' ')} key={index}>{item.title}</div>
|
2017-11-04 18:40:34 +02:00
|
|
|
}
|
|
|
|
|
|
|
|
render() {
|
|
|
|
return (
|
2017-11-04 21:46:37 +02:00
|
|
|
<ItemList
|
|
|
|
itemHeight={this.props.itemHeight}
|
|
|
|
style={this.props.style}
|
|
|
|
className={"note-list"}
|
|
|
|
items={this.props.notes}
|
|
|
|
itemRenderer={ (index, item) => { return this.itemRenderer(index, item) } }
|
2017-11-05 01:27:13 +02:00
|
|
|
></ItemList>
|
2017-11-04 18:40:34 +02:00
|
|
|
);
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
const mapStateToProps = (state) => {
|
2017-11-05 01:27:13 +02:00
|
|
|
//let notes = [];
|
|
|
|
//for (let i = 0; i < 100; i++) notes.push({ title: "Note " + i });
|
2017-11-04 21:46:37 +02:00
|
|
|
|
2017-11-04 18:40:34 +02:00
|
|
|
return {
|
2017-11-05 01:27:13 +02:00
|
|
|
notes: state.notes,
|
|
|
|
//notes: notes,
|
2017-11-04 18:40:34 +02:00
|
|
|
};
|
|
|
|
};
|
|
|
|
|
|
|
|
const NoteList = connect(mapStateToProps)(NoteListComponent);
|
|
|
|
|
|
|
|
module.exports = { NoteList };
|