使用AngularJS中的工厂可以更改TokenRestangular URL值。
例如,我可以这样做: .factory('projectFactory', ['TokenRestangular', function (TokenRestangular) {
var factory = {
projects: []
};
factory.get = function () {
return
resource = TokenRestangular.all('project');
resource.getList()
.then(function (project) {
factory.project = project;
return factory.project;
})
};
return factory;
}]);
并在我的控制器中更改资源的值,即
var projects = projectFactory.get()
projects.TokenRestangular.all('a_different_url');
希望这是有道理的。
答案 0 :(得分:1)
可以使用服务,但不能使用工厂。一个服务被创建为单例,因此每次注入它时,您将获得相同的实例。有了工厂,你就会得到一个新工厂。
您应该能够拥有如下的简单服务并将其注入您的控制器:
myApp.service('SimpleService', function() {
this.localValue = 0;
this.setLocalValue = function(newValue) {
this.localValue = newValue;
}
});
未经测试但应该给你足够的时间继续!