我有一个注入到控制器中的服务。该服务定义了许多功能。
现在,我想向该服务添加一个变量,该变量将在应用程序中保存selectedItem。我这样做是这样的:
angular.module('myservices', []).
factory('serviceA', function () {
var serviceA= {
selectedItem: selectedItem,
... more functions here
};
return serviceA;
var selectedItem;
... functions go here
});
在我的一个控制器中,设置所选项目:
serviceA.selectedItem = someItem;
在另一个控制器中,该视图引用选定的项目,如下所示:
<span>{{serviceA.selectedItem.value}}</span>
即使selectedItem设置正确,跨度也不会更新。我究竟做错了什么 ?
最佳答案
要在您的视图中访问服务,您需要将其分配给范围:$scope.serviceA = serviceA;
http://jsfiddle.net/MzJsZ/