Angularjs Angular.js:改变服务中的作用域
我是AngularJS的新手,写了一个应该处理国际化的服务。我想让它直接处理$scope,而不是在每个控制器中编写一些逻辑Angularjs Angular.js:改变服务中的作用域,angularjs,Angularjs,我是AngularJS的新手,写了一个应该处理国际化的服务。我想让它直接处理$scope,而不是在每个控制器中编写一些逻辑 myServices.factory('i18n', ['$resource', function($resource){ var lang = "en"; var translations = {}; var useLang = function(lang){ return $reso
myServices.factory('i18n', ['$resource',
function($resource){
var lang = "en";
var translations = {};
var useLang = function(lang){
return $resource('i18n/' + lang + '.json', {}, {
query: { method:'GET', isArray:false} }).query();
}
return {
'useLang' : useLang,
translations : useLang(lang),
}
我想使当前控制器的作用域可以在服务中直接访问。有可能吗?我不太明白。将逻辑抽象到服务中,然后将它们注入控制器中是有意义的。当控制器绑定到模板时,它应该处理自己的作用域。范围数据的任何逻辑或处理都应该传递到服务中,然后由控制器传递到模板上。你能举个例子说明你希望你的服务对$scope做什么吗?