gpt4 book ai didi

javascript - JS 中的条件 promise

转载 作者:行者123 更新时间:2023-11-30 14:00:20 26 4
gpt4 key购买 nike

我正在尝试减少对多个函数的需求,尤其是因为许多函数都有一个 promise 做同样的事情。但是,我希望根据 parent 的 props 添加条件。

比如我有一个函数

example
.doSomething()
.then(something => {
example.createSomething(something)
});

但是我如何添加一个条件,将 .doSomething()somethingElseprops 更改为 .doSomethingElse()?

因此,如果 somethingElse === true 函数将为

example
.doSomethingElse()
.then(something => {
example.createSomething(something)
});

最佳答案

我正在手机里写这个不要怪我,可能会稍后整理。

Promise.resolve(somethingElse ? example.doSomethingElse() : example.doSomething())
.then(...

如果你认为写两次example很乏味

Promise.resolve(example[somethingElse ? "doSomethingElse" : "doSomething"]())
.then(...

https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Promise

来自@Phil

如果两个(所有)函数都返回一个 Promise可以简单地做

example[somethingElse ? "doSomethingElse" : "doSomething"]().then(...

请注意,这意味着上面的 Promise.resolve 甚至可以处理非 Promise 返回值

关于javascript - JS 中的条件 promise ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56419838/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com