Variable: js-jsx-indent-level

js-jsx-indent-level is a customizable variable defined in js.el.gz.

Value

nil

Documentation

When non-nil, indent JSX by this value, instead of like JS.

Let js-indent-level be 4. When this variable is also set to nil, JSX indentation looks like this (consistent):

  return (
      <element>
          <element>
              Hello World!
          </element>
      </element>
  )

Alternatively, when this variable is also set to 2, JSX indentation looks like this (different):

  return (
      <element>
        <element>
          Hello World!
        </element>
      </element>
  )

This variable was added, or its default value changed, in Emacs 27.1.

Probably introduced at or before Emacs version 27.1.

Source Code

;; Defined in /usr/src/emacs/lisp/progmodes/js.el.gz
(defcustom js-jsx-indent-level nil
  "When non-nil, indent JSX by this value, instead of like JS.

Let `js-indent-level' be 4.  When this variable is also set to
nil, JSX indentation looks like this (consistent):

  return (
      <element>
          <element>
              Hello World!
          </element>
      </element>
  )

Alternatively, when this variable is also set to 2, JSX
indentation looks like this (different):

  return (
      <element>
        <element>
          Hello World!
        </element>
      </element>
  )"
  :version "27.1"
  :type '(choice integer
                 (const :tag "Not Set" nil))
  :safe (lambda (x) (or (null x) (integerp x))))