vue axios

我有2接口,怎么把第一个接口的返回的值,作为第二个接口的参数

阅读 4.9k
8 个回答

谢邀。

你的这个问题,可以用.then的promise方式来写。

另外,推荐一种es7的 async/await 的异步方式,更接近与同步的写法

具体写法和原理,请参照

emmm想了半天不知道怎么回答。。你的问题不就是答案吗

@jayzou
promise是这样用的

axios.get('xxx')
    .then((data) => {
        return axios.get('xx', data.data)
    })
    .then((data) => {
           
    })
axios.get('xxx')
    .then((data) => {
        axios.get('xx', data.data)
           .then((data) => {
           
           })
    }) 

直接把第二个接口请求写在第一个接口的成功回调里面不就好了吗

        axios.post('http://139.196.140.118:8080/',
            {
              'Comment': {
              },
              'User': {
                'id@': 'Comment/userId' // User.id = Comment.userId
              }
            })
          .then(res => {
            console.log(res.data)
          })
          .catch(err => {
            console.log(err);
          })

具体见项目主页
https://github.com/TommyLemon/APIJSON

这就是promise最经典的用法

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