0
RNを初めて使用していて、json配列のデータを含むリストビューを表示しようとしています。単純な配列を使用すると、コードに示されているjson配列エミュレータを実行すると、何も表示されません。リストビューでそれを表示するには、以下の私の例では、JSONを処理するための具体的な方法があります:ReactネイティブjsonオブジェクトがListViewに表示されない
class FetchExample extends Component {
constructor(props) {
super(props);
// Initialize the hardcoded test data - to be replaced by JOSN fetch
let data = {"Vehicles":[[
{"vehicle_make": "Toyota",
"vehicle_model": "Camry",
"vehicle_year": "2015",
"vehicle_price_range": "$$ (10-30)",
"car_id": 1127,
"vehicle_color": "Black",
"vehicle_car_accidents": "No",
"vehicle_no_owners": "1",
"car_vehicle_location": "Lot",
"vehicle_city_location": "L.A",
"vehicle_mileage": 10864,
"vehicle_vin": 1234,
"vehicle_off_lease": "Yes",
"vehicle_state": "CA"
}]]};
const ds = new ListView.DataSource({rowHasChanged: (r1, r2) => r1 !== r2});
this.state = {
dataSource: ds.cloneWithRows(data)
};
console.log(data);
}
render() {
return (
<View style={{paddingTop: 22}}>
<ListView
dataSource={this.state.dataSource}
renderRow={(rowData) => <Text>{rowData.Vehicles}</Text>}
/>
</View>
);
}
}
おかげで、私はしかし、私はまだ画面に任意のリストビューコンポーネントの出力が表示されない、あなたの提案を試みました。私はconsole.log(data.Vehicles)を実行し、そこにデータがあることを確認することができます。 – bobby747
私はそれを得たと思う - 今すぐ 'cloneWithRows'に渡されたデータは配列なので、正しくレンダリングする必要があります。以下を試してください: 'renderRow = {(rowData)=> {rowData。 vehicle_make + '' + rowData。 vehicle_model} } ' –
vgrafe
また、JSONオブジェクトのすべてのプロパティを表示することはあなたの目標ですか?そうであれば教えてください。私は答えを更新します。オブジェクトのプロパティではなく、配列内のすべてのプロパティを持つ必要があります。 – vgrafe