Javascript AngularJS飞利浦色调项目

Javascript AngularJS飞利浦色调项目,javascript,api,angularjs,philips-hue,Javascript,Api,Angularjs,Philips Hue,我开始做一个小的AngularJS-Philips色调项目,我有点被卡住了 我对AngularJS还是个新手。。。但事情是这样的 我想做的是列出我拥有的灯,灯的状态和开关 我决定建立一个工厂(基于本文:)来获取/放置数据: app.factory('lampsFactory', function($http) { return { getLamps: function(callback) { $http.get('http://172.16.0.2/api/n

我开始做一个小的AngularJS-Philips色调项目,我有点被卡住了

我对AngularJS还是个新手。。。但事情是这样的

我想做的是列出我拥有的灯,灯的状态和开关

我决定建立一个工厂(基于本文:)来获取/放置数据:

app.factory('lampsFactory', function($http) {
  return {
      getLamps: function(callback) {
          $http.get('http://172.16.0.2/api/newdeveloper/lights').success(callback);
      },
      getLampState: function(callback, lampID) {
          $http.get('http://172.16.0.2/api/newdeveloper/lights/'+ lampID).success(callback);
      }
  };
});
getLamps函数正常工作,但我不知道如何基于id获取lamp数据。 我试图增加一个额外的参数,但没有成功

你能帮我把我推向正确的方向吗

我也有一个plunker:


谢谢

我已将代码更改为:

var app = angular.module('plunker', []);

app.controller('MainCtrl', function($scope, lampsFactory) {

  lampsFactory.getLamps(function(results) {
      $scope.lamps = results;
  });

  $scope.getLampState = function(lampID){
    lampsFactory.getLampState(function(results) {
      console.log(results.state.on);
      return results.state.on;
  },lampID);
  };


});

app.factory('lampsFactory', function($http) {
  return {
      getLamps: function(callback) {
          $http.get('http://172.16.0.2/api/newdeveloper/lights').success(callback);
      },
      getLampState: function(callback, lampID) {
          $http.get('http://172.16.0.2/api/newdeveloper/lights/'+ lampID).success(callback);
      }
  };
});

而且它有效!谢谢

你能详细说明一下这句话吗:
但那不起作用
?您没有在API访问点接收到ID吗?如果是这种情况,您是否确保AJAX请求正确地传递了ID?我更改了我的代码,因此
getLampState:function(callback,lampID){$http.get('http://172.16.0.2/api/newdeveloper/lights/“+lampID).success(callback);}
和我的控制器函数到:
$scope.getLampState=function(taskId){lampsFactory.getLampState(函数(结果){console.log(results.state.on);return results.state.on;},taskId);};
它可以工作!唯一不工作的是ng重复代码:
{getLampState($index+1)}
它将继续重复getLampState函数。。。