angularjs中$http异步导致数据依赖出错

一个controller里面有几个$http请求,后面的要依赖前面返回的数据,有时候后面的数据比前面加载快,就会报null错误,有没有什么办法设置请求顺序?

阅读 2.7k
4 个回答

用Promise啊兄弟

用promise来解决异步的问题

$http.post()
    .then(res => {
        return res.data;
    })
    .then(data => {
        $http.get({ data })
            .then(callback);
        // ....
    })

可以按前面所说的用promise,或者你直接用回调函数咯。

var a = function(fn) {
    console.log("a");
    // 你可以在这里判断fn是否是一个函数,如果是再执行
    fn();
}

var b = function() {
    console.log("b");
}

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