は、私は次のようなメッセージを持っている(APIフェッチして)未定義のプロパティ「SETSTATE」を読み取ることができません
これは次のコード行にある:ここ
this.setState({users: data.users});
は、私は私の「ユーザー」状態の変数を設定しようとしているとき
である
`インポートが反応私のクラス、 '反応' から{コンポーネント}。
クラスのユーザーコンポーネント{
constructor(props) {
super(props);
this.state = {
users: []
};
}
componentWillMount() {
this.getUsers();
}
getUsers =() => {
let myHeaders = new Headers({
'Authorization': 'Basic '+btoa('[email protected]:password'),
'Accept': 'application/json',
'Content-Type': 'application/json'
});
fetch('https://dev-api/v1/user/', {
method: 'GET',
headers: myHeaders
}).then(function(response) {
if (!response.ok) {
throw Error(response.statusText);
}
return response;
}).then(function(response) {
response.json().then(function(data) {
this.setState({users: data.users});
});
}).catch(function(error) {
console.log(error);
});
}
render() {
return (
<table className="striped bordered">
<thead>
<tr>
<th>email</th>
<th>Firstname</th>
<th>Lastname</th>
</tr>
</thead>
<tbody>
{this.state && this.state.users && this.state.users.map(user =>
<tr>
<td>{user.username}</td>
<td>{user.firstname}</td>
<td>{user.lastname}</td>
</tr>
)}
</tbody>
</table>
);
}
}
輸出のデフォルトのユーザーを拡張; `
どうもありがとう! 。。 `})を((応答)=> { response.json()を((データ)=> { this.setState({ユーザー:データ
結合の問題は、矢印の関数を使用します。 –
ありがとうございました! – banibanc