반응 모범 사례
JSX와 논리 분리
import React from 'react';
function Todo() {
let condition = true;
const addHandler = () => {
if (condition) {
//do api call
}
}
return (
<div>
<button
onClick={() => addHandler()}
>Add</button>
</div>
)
}
export default Todo;
작은 구성 요소로 분할 및 재사용 가능
이것들은 모두 별도의 구성 요소가 될 것이므로 장기적으로 프로젝트가 더 커지면 거의 모든 구성 요소를 재사용할 수 있습니다.
상태 관리(Redux 또는 컨텍스트)
Redux: 빈도가 높은 상태 업데이트가 있는 대규모 애플리케이션에 적합
컨텍스트 API: 리소스가 풍부하고 상태 변경이 최소화되는 소규모 애플리케이션에 이상적입니다
후크 및 기능 구성 요소
대부분의 개발자들이 이미 이 두 가지를 기반으로 모든 프로젝트를 사용하고 있다고 생각하지만, 그냥 언급하고 싶었습니다 😁
스타일 구성 요소
import React from 'react';
import { Text } from './SubTitle.styled';
function SubTitle() {
return (
<Text>Hello</Text>
)
}
export default SubTitle;
import styled from "styled-components";
export const Text = styled.span`
color: #AAA;
font-size: 20px;
`;
테스트
타이프스크립트
TypeScript는 "일반 JavaScript로 컴파일되는 JavaScript의 유형이 지정된 상위 집합"입니다.
React에서 Typescript를 사용하면 강력한 형식과 통합 속도가 더 빠른 보다 안정적인 구성 요소를 개발하는 데 도움이 됩니다. 가장 간단한 예를 확인해 보겠습니다.
interface Props {
label: string;
onClick: () => void;
}
function Button({ label, onClick, ...props }: Props) {
return (
<button
onClick={onClick}
{...props}
>
{label}
</button>
)
}
export default Button;
본질적인 요소:
고유 요소는 특수 인터페이스 JSX.IntrinsicElements에서 조회됩니다. 기본적으로 이 인터페이스가 지정되지 않으면 모든 것이 진행되고 내장 요소는 유형 검사되지 않습니다. 그러나 이 인터페이스가 있는 경우 내장 요소의 이름은 JSX.IntrinsicElements 인터페이스의 속성으로 조회됩니다.
내장 요소를 사용하면 요소의 기본 '소품'을 사용할 수 있습니다.
export type Props = JSX.IntrinsicElements["button"] & {
label: string;
}
<Button
label={'SUBMIT'}
onClick={() => console.log('CLICK')}
onBlur={() => console.log('BLUR')}
/>
React는 멋진 라이브러리입니다. 매우 유연하고 확장 가능한 방식으로 코드를 분할 및 구성할 수 있으며 단순하고 높은 수준으로 유지하고 싶었습니다.
도움이 되셨길 바라며 끝입니다 😊
Reference
이 문제에 관하여(반응 모범 사례), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/awedis/react-best-practices-4l4m텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)