recommended
config.
🔧 This rule is automatically fixable by the --fix
CLI option.
/* eslint-disable arrow-return-style/arrow-return-style */
const delay = () =>
new Promise((resolve) => {
setTimeout(resolve, 1000);
});
const foo = () => {
return 'foo';
};
Array.from({ length: 10 }).map((_, i) => {
return i + 1;
});
const obj = () => {
return { name: '' };
};
const data = () => ({
name: '',
});
export const defineConfig = <T extends Linter.Config>(config: T) => config;
const fn = () => /* block comment */ 1;
const Div = () => (
<>
<div />
</>
);
const delay = () => {
return new Promise((resolve) => {
setTimeout(resolve, 1000);
});
};
const foo = () => 'foo';
const obj = () => ({ name: '' });
Array.from({ length: 10 }).map((_, i) => i + 1);
const data = () => {
return {
name: '',
};
};
export const defineConfig = <T extends Linter.Config>(config: T) => {
return config;
};
const fn = () => {
/* block comment */
return 1;
};
const Div = () => {
return (
<>
<div />
</>
);
};
Type: number
Default: 80
If the arrow function expression exceeds maxLen
characters, it is forced to use explicit return.
Type: boolean
Default: false
If set true
, always use explicit return when return value is JSXElement
or JSXFragment
.
Type: boolean
Default: true
By default, named exported arrow functions will always use explicit return to maintain consistency with regular functions because it is more intuitive and unified, and convenient for expansion.
See #57