Closed jspopisno1 closed 3 years ago
async function a() { // ... 明确不太需要处理 floating promise 的问题 } function b() { a() // <====== 此处为抱怨有 no-floating-promises 规则问题 }
a() 返回的 promise 有较大信心不需要被进一步处理
a()
a() => void a()
no-void
'no-void': ['error', {'allowAsStatement': true}]
'@typescript-eslint/no-floating-promises': ['error', {ignoreVoid: true}]
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
如果出现这个 error , 显式地 "要求你去看看到底发生了什么事情" 然后 "do the right thing"
直接发PR吧
1. 加入 no-void 规则的 allowStatement: true
样例代码
已知
a()
返回的 promise 有较大信心不需要被进一步处理提议的解决方案
a() => void a()
, 但这个跟现有的no-void
规则又产生冲突了,'no-void': ['error', {'allowAsStatement': true}]
以消除与'@typescript-eslint/no-floating-promises': ['error', {ignoreVoid: true}]
的冲突参考
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"