Prettier格式化TypeScript时为何会自动移除括号?
Prettier自动移除TypeScript类型中箭头返回值括号的原因及解决办法
原因:Prettier的代码风格规则判定你代码里的括号属于冗余内容。在TypeScript类型系统中,
(...args: any[]) => Promise<void> | void的解析逻辑和带括号的(...args: any[]) => (Promise<void> | void)完全等价,箭头函数返回值的联合类型无需额外括号来明确优先级,因此Prettier会自动移除这类不必要的括号,保证代码风格统一。强制保留括号的方法:如果因团队规范或个人习惯必须保留括号,可在目标代码行上方添加
// prettier-ignore注释,让Prettier跳过对该行的格式化:// prettier-ignore private requestFilterHooks: Dict<(...args: any[]) => (Promise<void> | void)> = {};
内容的提问来源于stack exchange,提问作者huan feng
相关产品推荐
相关产品推荐

