src/content/docs/linter/rules/use-error-message.mdx
import { Tabs, TabItem } from '@astrojs/starlight/components';
<Tabs> <TabItem label="JavaScript (and super languages)" icon="seti:javascript"> ## Summary - Rule available since: `v1.8.0` - Diagnostic Category: [`lint/suspicious/useErrorMessage`](/reference/diagnostics#diagnostic-category) - This rule isn't recommended, so you need to enable it. - This rule doesn't have a fix. - The default severity of this rule is [**warning**](/reference/diagnostics#warning). - Sources: - Same as [`unicorn/error-message`](https://github.com/sindresorhus/eslint-plugin-unicorn/blob/main/docs/rules/error-message.md){
"linter": {
"rules": {
"suspicious": {
"useErrorMessage": "error"
}
}
}
}
Enforce passing a message value when creating a built-in error.
This rule enforces a message value to be passed in when creating an instance of a built-in Error object,
which leads to more readable and debuggable code.
throw Error();
throw Error('');
throw new TypeError();
const error = new AggregateError(errors);
throw Error('Unexpected property.');
throw new TypeError('Array expected.');
const error = new AggregateError(errors, 'Promises rejected.');