React JSX에서 반복하는 방법
2516 단어 webdevbeginnersreactjavascript
JSX(Javascript Syntax Extension)는 요소 렌더링을 구조화할 수 있도록 하는 React 프레임워크에서 개발하고 대중화한 JavaScript 확장입니다. 기본적으로 React(UI 설명)에서 HTML 코드를 작성하기가 더 쉬워지고 유연성으로 인해 JSX는 수년 동안 Vue.js와 같은 다른 인기 있는 프레임워크에 채택되었습니다.
이 짧은 자습서에서는 다음 todos 배열을 사용하여 반응 JSX 요소 내부를 반복하는 방법을 살펴봅니다.
const todos = [
{ id: 1, text: "Learn React", status: "completed" },
{ id: 2, text: "Do something", status: "incomplete" },
{ id: 3, text: "Do something else", status: "incomplete" },
];
React JSX의 루프
ES6에 도입된 map() 함수는 JSX에서 루핑에 선호되는 유일한 방법입니다.
{
todos.map((todo) => (
<p key={todo.id}>
{todo.text} - {todo.status}
</p>
));
}
배열의 각 요소에 대해 텍스트 및 상태 필드를
키가 id 필드에 매핑되는 요소입니다. 이렇게 하면 다음 마크업 결과가 생성됩니다.
<p>Learn React - completed</p>
<p>Do something - incomplete</p>
<p>Do something else - incomplete</p>
키 속성 이해
사용 중인 프레임워크/린팅 도구에 따라 각각 고유한 키 값을 사용하지 않는 경우
요소를 사용하면 다음과 같은 경고가 표시될 수 있습니다.
Warning: Each child in a list should have a unique "key" prop
React 루프의 키는 어떤 항목이 변경, 추가 또는 제거되었는지 식별하는 데 도움이 되며 루프 내부의 부모 요소에 고유한 키를 제공하여 요소 또는 구성 요소에 안정적인 ID를 부여하는 것이 중요합니다.
todos 배열 예제에서와 같이 각 todo ID를 키로 지정할 수 있습니다.
{
todos.map((todo) => (
<div key={todo.id}>
<p key={todo.text}>
{todo.text} - {todo.status}
</p>
</div>
));
}
반복하려는 항목에 고유 ID와 같은 고유 요소가 없는 경우 각 반복 요소에 대해 map() 함수에서 반환된 인덱스를 대신 사용하는 것이 일반적인 규칙입니다. 도메인 모델 변경:
{
todos.map((todo, index) => (
<div key={index}>
<p key={todo.text}>
{todo.text} - {todo.status}
</p>
</div>
));
}
결론
컴포넌트 루프를 사용하여 데이터를 출력하고 조작하는 것은 React의 일반적인 개발 방법입니다. 이 가이드에 표시된 대로 HTML 요소를 동적 데이터와 함께 그룹화할 수 있습니다. 이는 일반적으로 DOM 쿼리가 없는 순수한 JavaScript 앱에서는 불가능합니다. 깨끗하고 효율적이며 읽기 쉬운 방식으로 항목 집합을 출력하려면 구성 요소 루프를 사용해야 합니다.
Reference
이 문제에 관하여(React JSX에서 반복하는 방법), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/sureshramani/how-to-loop-in-react-jsx-bl7텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)