no-useless-fallback-in-spread

March 27, 2026 ยท View on GitHub

๐Ÿ“ Disallow useless fallback when spreading in object literals.

๐Ÿ’ผ This rule is enabled in the following configs: โœ… recommended, โ˜‘๏ธ unopinionated.

๐Ÿ”ง This rule is automatically fixable by the --fix CLI option.

Spreading falsy values in object literals won't add any unexpected properties, so it's unnecessary to add an empty object as fallback.

Examples

// โŒ
const object = {...(foo || {})};

// โŒ
const object = {...(foo ?? {})};

// โœ…
const object = {...foo};
// โœ…
const object = {...(foo && {})};
// โœ…
const array = [...(foo || [])];