我想在react native中显示一个列表,但屏幕上显示的是:
item.name item.name item.name item.name item.name
如果我将鼠标悬停在“项目”上,它会说
已声明“ item”,但从不读取其值。
如果我删除了 Text 标签,则 item 是可见的,但由于必须被Text标签包围,因此无法显示名称。
import React, { Component } from 'react';
import { StyleSheet,Text, View,TouchableOpacity,AsyncStorage,FlatList } from
'react-native';
import { createStackNavigator} from "react-navigation"
export default class ListPage extends Component {
render(){
const { navigation } = this.props;
return (
<View style={styles.container}>
<FlatList
data = {[{name:'bob'},{name:'bob'},{name:'bob'},{name:'bob'},{name:'bob'}]}
keyExtractor={(x,i) => i.toString()}
renderItem={({ item }) =>
<Text>item.name</Text>
}
/>
</View>
);
}
}
const styles = StyleSheet.create({
container: {
flex: 1,
backgroundColor: '#95a5a6',
},
})
答案 0 :(得分:0)
您的数据是一个对象数组。您忘了用大括号包装renderItem函数。应该是:
renderItem={({ item }) =>
<Text>{item.name}</Text>
代替:
renderItem={({ item }) =>
<Text>item.name</Text>