【问题标题】:What's the reason?什么原因?
【发布时间】:2018-12-06 22:48:02
【问题描述】:

这是我的代码。

class Squence extends Component {
    constructor(props){
        super(props)
        this.data = []
    }
    render() { 
        for(var i = 0; i < 3; i++){
            this.data.push(i);
        }
        return ( 
                <View>
                {this.data.map((item) => {
                    <View key={item} style={{height: 20, width: 20, backgroundColor: 'red', marginLeft: 3, marginTop: 3}}><Text>{item}</Text></View>
                })}
                </View>
         );
    }
}
export default Squence;

我认为我的代码没有错,但它不起作用! 什么原因? 我用map方法有错吗?

【问题讨论】:

  • 您需要告诉我们您所说的“不起作用”是什么意思。

标签: reactjs react-native


【解决方案1】:

你没有从map 返回任何东西。使用 () 而不是 {} 或显式键入 return。以下是一些示例:

this.data.map(item => <View>...</View>);

this.data.map(item => (
    <View>...</View>
));

this.data.map(item => {
    return <View>...</View>;
});

【讨论】:

  • 但是,我的地图功能是返回部分吗?
  • 你的map 仍然需要return
  • @JohnMiller 不,不是;你在箭头函数体周围有花括号{},这意味着你需要一个明确的返回。
  • 好的!谢谢。
  • 是的。我解决了这个问题。我遇到了一些矛盾
猜你喜欢
  • 2017-04-10
  • 1970-01-01
  • 1970-01-01
  • 2016-08-28
  • 2016-09-01
  • 2011-12-04
  • 2012-07-08
  • 2011-08-29
  • 1970-01-01
相关资源
最近更新 更多