Js链式调用如何加条件?

我想用 userProxy 判断是否加上.proxy(),应该怎么样优雅实现呢。

if (useProxy) {
  data = await superAgent
    .get(send.url)
    .proxy(proxy)
    .query(send.query)
    .timeout({
      response: 8000
    })
    .set({
      'Content-Type': 'application/x-www-form-urlencoded'
    })
} else {
  data = await superAgent
    .get(send.url)
    .query(send.query)
    .timeout({
      response: 15000
    })
    .set({
      'Content-Type': 'application/x-www-form-urlencoded'
    })
}
阅读 3.2k
3 个回答
let agent = await superAgent.get(send.url)
if(useProxy){
    agent = await agent.proxy(proxy)
}
data = await agent.query(send.query)
    .timeout({
      response: 8000
    })
    .set({
      'Content-Type': 'application/x-www-form-urlencoded'
    })

这样应该可以吧,不太确定哪里有异步,都加个await总没错

运用三目运算符

链式调用随时可以把结果取出来用变量存储,再加if判断你需要的方法,再取出来保存到变量存储,然后再继续后面的链式调用

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题