2016-01-27 56 views
3

我有一个终极版的店面结构ImmutableJS看起来像这样:如何通过JSX中的ImmutableJS地图列表进行映射?

Immutable.fromJS([{ 
    foo: 'bar' 
}, { 
    foo: 'baz' 
}]); 

它映射到this.props.items在我的阵营组成部分。在我的React渲染函数中,我试图做到这一点:

this.props.items.map(item => { 
    return (
    <div>{item.foo}</div> 
); 
}); 

什么都没有呈现。但是如果我.toJS()如下面的列表中,然后它的工作原理:

this.props.items.toJS().map(item => { 
    return (
    <div>{item.foo}</div> 
); 
}); 

我的问题是:是.toJS()做这种正确的方法是什么?如果不是,我做错了什么?

回答

6

如果你用item.get('foo')代替item.foo,你应该很好。函数Immutable.fromJS将深度转换为不可变结构。