React.js 잘못 구성 요소를 자손에 값을 보낼 소품을 사용하여 초과 React.js : catch되지 않은 오류 RangeError : 최대 호출 스택의 크기는
const Child = props => <div onClick={ e => console.log(props.value) }>Click to see value.</div>
const Father = props => <div>{ React.cloneElement(props.children, props) }</div>
const GrandFather = props => <div>{ React.cloneElement(props.children, props) }</div>
ReactDOM.render(
<GrandFather value="This is Test">
<Father>
<Child />
</Father>
</GrandFather>,
document.getElementById('root')
)
내가 자손에 정보를 전송하기 위해
props
를 사용하여 테스트 할 수있는 이전의 데모를 쓰기? 구성 요소. 하지만 그것은 잘못을 일으켰습니다 :
Uncaught RangeError: Maximum call stack size exceeded at Object.ReactElement.cloneElement
데모가 잘 실행 된 후에 작성하지만 오류가 발생한 원인을 알려주시겠습니까?
const Child = props => <div onClick={ e => console.log(props.value) }>Click to see value.</div>
const Father = props => <div>{ React.cloneElement(props.children, props) }</div>
ReactDOM.render(
<Father value="This is Test">
<Child />
</Father>,
document.getElementById('root')
)
구성 요소에 하위 요소가있는 경우 JSX에도 하위 구성 요소가 있습니다. 구성 요소의'props.children'은 사용자가 설정 한 소품입니다. 'React.js'가 둘 모두를 얻을 수있는 해결책을 제시 할 수 있을까요? – TomIsion
키는 새로운 요소의'children' 인'.cloneElement'의 세번째 파라미터입니다. – TomIsion