如何将价值传递给AngularJS $ HTTP成功回调 [英] How to pass a value to an AngularJS $http success callback

查看:168
本文介绍了如何将价值传递给AngularJS $ HTTP成功回调的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

在我的AngularJS应用我做以下

  $ http.get('/插件/+按键+'/js').success(function(数据){
    如果(data.length大于0){
        的console.log(数据);
        //这里我还要需要关键的价值
    }
});

现在我需要访问成功回调中的价值,也就是我需要知道什么时候的get(),它看重它有要求已经取得进展。

任何最佳实践怎么做?

PS:我能做到以下几点,但有没有更好的办法

  VAR键= config.url.split('/')[2];


解决方案

解决方案1:

  $ scope.key =键;
$ http.get('/插件/+按键+'/js').success(function(数据){
    如果(data.length大于0){
        的console.log(数据,$ scope.key);
    }
});

解决方案2(每吉姆·洪的观察更新了他的答案):

  $ http.get('/插件/+键+'/js').success((function(key){
    返回功能(数据){
        的console.log(键,数据);
    }
})(键));

In my AngularJS application I am doing the following

$http.get('/plugin/' + key + '/js').success(function (data) {
    if (data.length > 0) {
        console.log(data);
        // Here I would also need the value of 'key'
    }
});

Now I need to access the key value within the success callback, i.e. I need to know which value it had when the get() request has been made.

Any "best practice" how to do so?

PS: I can do the following, but is there a better way?

var key = config.url.split('/')[2];

解决方案

Solution 1:

$scope.key = key;
$http.get('/plugin/' + key + '/js').success(function (data) {
    if (data.length > 0) {
        console.log(data, $scope.key);
    }
});

Solution 2 (Updated per Jim Hong's observation in his answer):

$http.get('/plugin/' + key + '/js').success((function(key) {
    return function(data) {
        console.log(key, data);
    }
})(key));

这篇关于如何将价值传递给AngularJS $ HTTP成功回调的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆