明确的函数名称表明它将 return 一个 Promise (JavaScript)

Clear function name that indicates it will return a Promise (JavaScript)

我想知道对于 return 明确解释 .then() 的函数是否应该遵循的命名约定 如果您希望承诺有效,则应添加该承诺。

我将旧函数 addFilterForLanguage(lang) 修改为 return 下载该语言过滤器的承诺。以前不是异步任务,filter还没到就调用了。我想要一个更好的名字来清楚地表明 .then() 是必要的。我们经常有新的实习生(其中一位写了原始代码),他们可能不了解 promises,并且经常假设它 would/will "just work."

是否有这方面的约定,或者addFilterForLanguage_ButDontForgetToCall_Then_AndPassInAFunctionIfYouWantItToRunToMakeItSyncronous(lang)我能做的最好吗?

(我以为addFilterForLanguage(lang).then(myFunction)说得够清楚了,但你永远不知道。)

据我所知,这要么作为团队内的编码指南实施,要么没有实施。过去,我曾在团队中工作过,我们是否决定向任何返回承诺的内容添加异步后缀,所以在你的情况下,addFilterForLanguageAsync。

当您在 Node 风格的回调函数上使用 Promise.promisifyAll 时,Bluebird Promise 库会添加 Async 作为函数名称的后缀。

例如,将 fs.exists 转换为 promisifyAll 将把它变成 fs.existsAsync

我们在 Promises 需要与 Node 样式回调交互的任何代码中都使用了该约定。