2017-12-02 1 views
0

두 개의 JSON 파일을 읽고 한 번만 읽으면 다른 하나의 자식을 알 수 있습니다.상관 관계가있는 반응에서 분리 된 JSON을 렌더링하는 방법

예 :

파일 : "/user.js"

{Users:[name: "John", profession: "writer"],[name: "May", profession: "none"]} 

파일 : "/ages.js"

{ages:{Jack:{age:66}},{John:{age:45}}} 
render(){  
    <div> 
    First Worker {Users[0].name} <!-- Only now I will know his name--> 

    Is {ages.X.age} years old <!-- X should be John, I wanted to do something like {ages.Users[0].name.age} --> 
    </div> 
} 
+1

연령대 [Users [0] .name] .age'를 사용할 수 있습니까? – cowCrazy

+0

좋은 생각 이었지만 작동하지 않습니다. –

+0

JSON은 인코딩 된 데이터가 포함 된 ** 문자열 ** 형식입니다. 데이터로 작업하려면 인코딩 된 실제 데이터를 얻기 위해 JSON ** 문자열 **을 구문 분석해야합니다. –

답변

1

파일 : "/user.js "및"/ages.js "는 유효한 JSON 파일이 아니므로 https://jsonlint.com에서 확인하십시오.

유효한 JSON 파일 수 :

파일 : "/user.js"

{"Users": [{"name": "John","profession": "writer"},{"name": "May","profession": "none"}]} 

파일 : "/ages.js"

{"ages": [{"Jack": {"age": 66}},{"John": {"age": 45}}]} 

후 당신은 cowCrazy의 해결책이 효과가 있다는 것을 바꿉니다. 당신이 연관 배열로 객체의 키 - 값에 액세스 할 수 있습니다 자바 스크립트에서

,의 그 예를 살펴 보자 : "cowCrazy"

var users = {"name":"cowCrazy"}; 
var tmp = "name"; 

console.log(users.name); 
console.log(users["name"]); 
console.log(users[tmp]); 

세 CONSOLE.LOG이 같은 결과를 보여줍니다.

이 정보가 도움이되기를 바랍니다.

+0

감사합니다. 싼 예를 들겠습니다. 문제가 아니 었습니다. 문제는 react.js 및 수명주기와 관련이 있습니다. 렌더링 전에 작업하여 해결했습니다. 나는 이것을 렌더링하는 동안 불가능하다고 생각한다. –

관련 문제