Enforce Usage of Spacing in Template Strings (template-curly-spacing)

The --fix option on the command line can automatically fix some of the problems reported by this rule.

We can embed expressions in template strings with using a pair of ${ and }.

This rule can force usage of spacing within the curly brace pair according to style guides.

let hello = `hello, ${people.name}!`;

Rule Details

This rule aims to maintain consistency around the spacing inside of template literals.

Options

{
    "template-curly-spacing": ["error", "never"]
}

This rule has one option which has either "never" or "always" as value.

Examples

never

Examples of incorrect code for this rule with the default "never" option:

/*eslint template-curly-spacing: "error"*/

`hello, ${ people.name}!`;
`hello, ${people.name }!`;

`hello, ${ people.name }!`;

Examples of correct code for this rule with the default "never" option:

/*eslint template-curly-spacing: "error"*/

`hello, ${people.name}!`;

`hello, ${
    people.name
}!`;

always

Examples of incorrect code for this rule with the "always" option:

/*eslint template-curly-spacing: ["error", "always"]*/

`hello, ${ people.name}!`;
`hello, ${people.name }!`;

`hello, ${people.name}!`;

Examples of correct code for this rule with the "always" option:

/*eslint template-curly-spacing: ["error", "always"]*/

`hello, ${ people.name }!`;

`hello, ${
    people.name
}!`;

When Not To Use It

If you don’t want to be notified about usage of spacing inside of template strings, then it’s safe to disable this rule.

Version

This rule was introduced in ESLint 2.0.0-rc.0.

Resources