Skip to content
← Back to rules

react/jsx-boolean-value 스타일

An auto-fix is available for this rule.

작동 방식

코드 내에서 부울 속성 스타일을 일관되게 유지하도록 강제합니다.

왜 문제인가요?

JSX에서는 부울 속성을 true로 설정하거나 생략할 수 있습니다.
이 규칙은 부울 속성에 대해 일관된 스타일을 강제합니다.

예시

기본값 "never" 모드에서 잘못된 코드 예시:

jsx
const Hello = <Hello personal={true} />;

기본값 "never" 모드에서 올바른 코드 예시:

jsx
const Hello = <Hello personal />;

const Foo = <Foo isSomething={false} />;

"always" 모드에서 잘못된 코드 예시:

jsx
const Hello = <Hello personal />;

"always" 모드에서 올바른 코드 예시:

jsx
const Hello = <Hello personal={true} />;

구성

1번째 옵션

유형: "always" | "never"

"always"

모든 부울 속성은 명시적인 값이 있어야 합니다.

"never"

모든 부울 속성은 true로 설정된 값을 생략해야 합니다.

2번째 옵션

이 옵션은 다음 속성을 가진 객체입니다:

always

유형: string[]

기본값: []

항상 명시적인 부울 값을 가져야 하는 속성 이름 목록입니다.
주 모드가 "never"일 때만 필요합니다.

assumeUndefinedIsFalse

유형: boolean

기본값: false

true일 경우, prop={false}를 해당 속성이 undefined와 동일하게 처리합니다.
"never" 모드와 함께 사용 시, 속성이 완전히 생략되어야 함을 강제합니다.

jsx
// "assumeUndefinedIsFalse": true인 경우
<App foo={false} />; // 잘못됨
<App />; // 올바름

이 옵션은 "always" 모드에서는 아무런 효과가 없습니다.

never

유형: string[]

기본값: []

항상 명시적인 부울 값을 가지지 않아야 하는 속성 이름 목록입니다.
주 모드가 "always"일 때만 필요합니다.

사용 방법

설정 파일이나 명령줄 인터페이스에서 이 규칙을 활성화하려면 다음을 사용하세요:

json
{
  "plugins": ["react"],
  "rules": {
    "react/jsx-boolean-value": "error"
  }
}
bash
oxlint --deny react/jsx-boolean-value --react-plugin

참고 자료