如何移除Prettier为箭头函数语句添加的圆括号?
解决Prettier给箭头函数赋值表达式自动加括号的问题
Prettier给你的箭头函数返回值加括号,是因为你直接返回了一个赋值表达式——它这么做是为了消除语法歧义,避免解析器混淆箭头函数的返回值和函数体逻辑。
目前Prettier没有提供专门的配置项来关闭这个行为,你可以通过以下两种方式解决:
显式编写函数体:用大括号包裹函数逻辑并添加
return语句,这样Prettier就不会自动添加括号了:const write = (id, content) => { return document.getElementById(id).innerHTML = content; }; // 或者更清晰的写法(分开赋值和返回): const write = (id, content) => { const element = document.getElementById(id); element.innerHTML = content; return element.innerHTML; };调整表达式写法:如果坚持省略大括号和
return,可以将赋值表达式转换为逗号表达式(不推荐,可读性较差),Prettier不会给逗号表达式的返回值加括号:const write = (id, content) => (document.getElementById(id).innerHTML = content, content);这种写法本质是返回逗号表达式的最后一个值,虽然能去掉外层括号,但会降低代码可读性,不建议在生产代码中使用。
内容的提问来源于stack exchange,提问作者Daniel Mohebi
相关产品推荐
相关产品推荐

