을 선호합니다.
1) 변수를 사용하십시오. 실제로 JSX 부분 (반환)에 들어가기 전에 원시 JS의 유연성을 사용하여 변수를 빌드 할 수 있습니다. 귀하의 예를 들어 ...
최상위 레벨을 래핑해야합니다. 단지 여분의 div를 넣어야합니다.
2) 기능을 사용하십시오.
renderBody() {
let body;
if (x === "Let's go") {
body = <Go />
} else {
body = <Hold on />;
}
return (
{body}
)
}
render() {
return (
<div>
{renderBody()}
</div>
)
}
3) 배열 (# 1의 정말 일부를 사용)하지만 자주 가끔 내가 한 요소를 반환해야 시나리오를 찾을 수 있습니다 ..이 예는 아마 너무 단순하지만 당신은 아이디어를 얻을 수 있습니다 하지만 다른 시간에 요소의 가변 개수를 반환해야합니다. 함수의 맨 위에 배열을 만들고 배열에 요소를 푸시/언 쉬프트합니다. 배열을 만들 때마다 React가 올바르게 업데이트 할 수 있도록 각 요소에 대한 키를 제공해야합니다.
let els = [
<div key="always">Always here</div>
];
if (foo) {
els.push(<div key="ifFoo">Conditionally Here</div>)
}
그리고 나서 주 JSX에서 {els} 변수 만 사용하십시오.
4) 아무것도 렌더링하지 않으려면 null을 반환하십시오.
자세한 설명을 주셔서 감사합니다. 내 구성 요소가 커지면 모든 중괄호를 사용하여 디버깅하기가 어려워집니다. 나는 내 코드를 리팩토링 할 때 확실히 이러한 아이디어를 사용할 것이다. – Ajit
희망이있다. 만족 스럽다면 받아 들인 대답으로 표시하십시오. –