# Enforce boolean attributes notation in JSX (`react/jsx-boolean-value`) 🔧 This rule is automatically fixable by the [`--fix` CLI option](https://eslint.org/docs/latest/user-guide/command-line-interface#--fix). When using a [boolean attribute in JSX](https://web.archive.org/web/20160607204033/http://facebook.github.io/react/docs/jsx-in-depth.html#boolean-attributes), you can set the attribute value to `true` or omit the value. ## Rule Details This rule will enforce one or the other to keep consistency in your code. ## Rule Options This rule takes two arguments. If the first argument is `"always"` then it warns whenever an attribute is missing its value. If `"never"` then it warns if an attribute has a `true` value. The default value of this option is `"never"`. The second argument is optional. If provided, it must be an object. These properties are supported: First, the `"never"` and `"always"` properties are one set. The two properties cannot be set together. `"never"` must be used when the first argument is `"always"` and `"always"` must be used when the first argument is `"never"`. This property’s value must be an array of strings representing prop names. When the first argument is `"never"`, a boolean `"assumeUndefinedIsFalse"` may be provided, which defaults to `false`. When `true`, an absent boolean prop will be treated as if it were explicitly set to `false`. Examples of **incorrect** code for this rule, when configured with `"never"`, or with `"always", { "never": ["personal"] }`: ```jsx var Hello = ; ``` Examples of **correct** code for this rule, when configured with `"never"`, or with `"always", { "never": ["personal"] }`: ```jsx var Hello = ; ``` Examples of **incorrect** code for this rule, when configured with `"always"`, or with `"never", { "always": ["personal"] }`: ```jsx var Hello = ; ``` Examples of **correct** code for this rule, when configured with `"always"`, or with `"never", { "always": ["personal"] }`: ```jsx var Hello = ; ``` Examples of **incorrect** code for this rule, when configured with `"never", { "assumeUndefinedIsFalse": true }`, or with `"always", { "never": ["personal"], "assumeUndefinedIsFalse": true }`: ```jsx var Hello = ; ``` Examples of **correct** code for this rule, when configured with `"never", { "assumeUndefinedIsFalse": true }`, or with `"always", { "never": ["personal"], "assumeUndefinedIsFalse": true }`: ```jsx var Hello = ; ``` ## When Not To Use It If you do not want to enforce any style for boolean attributes, then you can disable this rule.