将变量传递给工厂?

时间:2015-04-08 17:47:56

标签: javascript angularjs

我的工厂是一个包装的$ resource对象,它需要有一个自定义标头(用于http身份验证)。我无法弄清楚如何传入数据以放入标题

app.factory('SomeFactory',['$resource', function($resource){
    return $resource('https://third.party/:token',{token: access_token},{
    get:{
        method:'GET',
        header:{
        'some varialbe': my_var //I want to be able to pass in this var
     }
    }
    });
}])

1 个答案:

答案 0 :(得分:0)

app.factory('SomeFactory', ['$resource', function($resource){
  return function(access_token,my_var){ // input parameters here
    return $resource('http://third.party/:token',{
      token: access_token
    },{
      get: {
        method: 'GET',
        header: {
          'some variable': my_var
        }
      }
    });
  };
})

......或类似的东西。

app.controller('SomeController', ['SomeFactory', function(someFactory){
  /* ... */
  $scope.myModel.result = someFactory('accesstoken','myvar')
  /* ... */
});