Я видел это раньше, но я все еще застрял. Мой код, из которого я получаю данные, выглядит следующим образом:
async componentDidMount(){
try {
const res = await
fetch('https://templates.accordproject.org/template-library.json');
const data = await res.json();
this.setState({
contracts: data,
});
} catch(e) {
console.log(e);
}
}
Я называю это здесь:
{this.state.contracts.map(contract => <Contract key={contract.id} contract={contract} />)}
Я вижу, что это состояние:
contracts:
{
"acceptance-of-delivery@0.0.3": {
"name": "acceptance-of-delivery",
"description": "This clause allows the receiver of goods to inspect them for a given time period after delivery.",
"version": "0.0.3",
"ciceroVersion": "^0.3.0",
"type": 1
}, /// etcv for long string of json
Я получаю следующую ошибку:
TypeError: this.state.contracts.map is not a function
Я вполне уверен, что карта ожидает массив, но это не один. Мой вопрос:
Если это проблема, как мне сделать this.state.contracts Array, чтобы карта работала?