gpt4 book ai didi

ios - 在 React Native 中将数组打印到屏幕

转载 作者:行者123 更新时间:2023-11-29 00:46:16 25 4
gpt4 key购买 nike

我只想在我的 React Native iOS 应用程序的屏幕上打印几个数组。现在屏幕上什么也没有显示。 for 循环后的 console.logs 显示数组具有它们应该具有的数据,但未反射(reflect)在屏幕上。如何在 fetch 调用加载后再次渲染?这是我的代码:

'use unique'
import React, { Component } from 'react';
import {
StyleSheet,
TouchableHighlight,
Text,
View,
ListView
} from 'react-native';

import api from './apicall';

class APIRequest extends Component {

constructor() {
super();

this.state = {
users: [],
id: [],
type: []
}
}

componentWillMount() {

api.getData()
.then((res) => {
this.setState({
users: res
})
for (var i = 0; i < this.state.users.length; i++) {
this.state.id.push(this.state.users[i].id);
this.state.type.push(this.state.users[i].type);
});
}

render() {
return(
<View style={styles.container}>
<Text style={styles.buttonText}>
{this.state.id}
</Text>
</View>
);
}
}

最佳答案

this.state.id.push(this.state.users[i].id);
this.state.type.push(this.state.users[i].type);

这是设置新状态的错误方法。您应该执行以下操作:

var idArray = [];
var typeArray = [];
for (var i = 0; i < this.state.users.length; i++) {
idArray.push(this.state.users[i].id);
typeArray.push(this.state.users[i].type);
}
this.setState({id: idArray});

关于ios - 在 React Native 中将数组打印到屏幕,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38573550/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com