不变违规:文本字符串必须在组件内呈现

时间:2019-01-24 11:26:43

标签: javascript reactjs react-native

我正在尝试打印1到10之间的数字,以便用户可以按任意一个。 但是,我收到此错误,显示为

  

永久违反:文本字符串必须在<Text>中呈现   组件。

这是render中的代码。

render(){
         let arr=[];
         for(let index=1;index<=this.state.max_rating;index++){
             arr.push(
                 <TouchableOpacity
                      activeOpacity={0.7}
                      key={index}
                      onPress={this.UpdateRating.bind(this, index)}>
                      <Text key={index}>
                        {'lol'}
                      </Text>
                   >
                </TouchableOpacity>
              );
         }

         return(
             <View style={styles.MainContainer}>
              <Text> The code is working man </Text>
              <View style={styles.childView}>{arr}</View>
             </View>
         );
     }

1 个答案:

答案 0 :(得分:1)

您的代码中存在一个轻微的语法问题

for(let index=1;index<=this.state.max_rating;index++){
         arr.push(
             <TouchableOpacity
                  activeOpacity={0.7}
                  key={index}
                  onPress={this.UpdateRating.bind(this, index)}>
                  <Text key={index}>
                    {'lol'}
                  </Text>
               > <-- extra character which is treated as a string giving you the warning
            </TouchableOpacity>
          );
     }

删除>组件中呈现的<TouchableOpacity>字符,它将正常工作