반응 내에서 데이터 기반 렌더링에 JSON 매핑에 대해 노력하고 있습니다. 내가해야 할 일의 일부를 성취하는 것. 중첩 JSON이 필요합니다. 이 데이터를 매핑하려고하면 매핑 할 수없는 값으로 계속 실행됩니다. 특히 보간 된 div에 중첩 된 값을 전달하려고 시도 할 때 (mapObject.object.value)
을 시도 할 때.API 호출에서 매핑 할 때 중첩 JSON 객체 검색
import React, { Component } from 'react';
import '../HeaderBar/HeaderBar.css';
import 'whatwg-fetch';
type StatusBarProps = {};
type StatusBarState = {
// tslint:disable-next-line:no-any
positionStatus: any;
};
class StatusBar extends Component<StatusBarProps, StatusBarState> {
constructor() {
super();
this.state = {
positionStatus: []
};
}
componentWillMount() {
// maps azimuth and elevation for all objects
fetch('http://localhost:5001/PositionComponent/').then(results => {
return results.json();
}).then(data => {
let positionStatus = data.map((positioning) => {
return (
<div className="temporary" key={positioning.key}>{positioning.Elevation.positionValue} : {positioning.Azimuth.positionValue}</div>
);
});
this.setState({ positionStatus: positionStatus });
});
}
render() {
return (
<div className="location">
<div className="col-xs-12">
{this.state.positionStatus}
</div>
</div>
);
}
}
export default StatusBar;
관련 JSON 문제의 컨텍스트를 제공되었지만, 개발 속도를 위해 JSON.server에서 제공되는 :
JSON
{"PositionComponent": [
{
"key": 0,
"Elevation": {
"positionValue": "1.11566",
"id": 0
}
},
{
"key": 1,
"Azimuth": {
"positionValue": "1.145657",
"id": 1
}
}
]
}
는 구성 요소를 반응한다. 문제는 내가 {positioning.Elevation.positionValue}
을 호출하여 객체 자체에 레벨을 내려갈 수없는 Object {key: 0, Elevation: Object } Object { key: 1, Azimuth: Object }
을 수신하고있는 것 같습니다. 제 질문은 이것을 어떻게 매핑하여 내부 객체 값을 고도와 방위각에 묶을 수 있습니까?
'data.PositionComponent.map (...) '대신'data' 대신 매핑을 시도 했습니까? – mersocarlin
@mersocarlin 전 아니지만, 지금 노력하고 있습니다. – jpearsonNode
@mersocarlin 그것은 data.PositionComponent가 throw됩니다. 정의되지 않은 오류 – jpearsonNode