ecomfe / eslint-config

eslint shareable config for efe
MIT License
118 stars 31 forks source link

配置中 @typescript-eslint/no-floating-promises 与 no-void 产生的冲突 #25

Closed jspopisno1 closed 3 years ago

jspopisno1 commented 3 years ago

1. 加入 no-void 规则的 allowStatement: true

样例代码

async function a() {
   // ... 明确不太需要处理 floating promise 的问题
}

function b() {
    a() // <====== 此处为抱怨有 no-floating-promises 规则问题
}

已知

a() 返回的 promise 有较大信心不需要被进一步处理

提议的解决方案

参考

https://github.com/typescript-eslint/typescript-eslint/blob/master/packages/eslint-plugin/docs/rules/no-floating-promises.md (内网访问) http://minerva.dev.weiyun.baidu.com:8546/pages/minerva.html#/main?item=uzrv3o53kjlbcnyq10h0

2. 基于以上有合适的解决 floating 问题, 恢复 no-floating-promises 等级为 'error'

原因

如果出现这个 error , 显式地 "要求你去看看到底发生了什么事情" 然后 "do the right thing"

otakustay commented 3 years ago

直接发PR吧