我希望我的视图在从我的服务传递给控制器的新值时更新。
service.js
function navigationTreeService($http, $q, perspectivesService) {
return {
getExtension: getExtension
};
function getExtension(){
return extension;
}
function setExtension(value){
extension = value;
}
//
}
controller.ts
angular.module('myModule').controller('ViewController',
['$scope', '$rootScope', 'userSessionService', 'navigationTreeService', '$http',
function ($scope, $rootScope, userSessionService, navigationTreeService, $http) {
'use strict';
$scope.extensionNavi = navigationTreeService.getExtension();
}]);
view.html
<div class="extensionNavi" style="height: 50px; width: 400px;">
{{extensionNavi}}
</div>
以下代码仅更新视图一次,我希望每次为service.js中的扩展设置新值时都要更新它。我怎样才能做到这一点? 提前谢谢。
答案 0 :(得分:0)
服务不像控制器那样提供双向绑定。您需要$观察您的值或使用this method来获取和设置值。
答案 1 :(得分:0)
如果您与控制器共享服务值,请尝试使用对象,例如:
function navigationTreeService($http, $q, perspectivesService) {
var model = {extension: undefined};
function getExtension () {
return model.extension;
}
function setExtension (value) {
model.extension = value;
}
return {
getExtension:getExtension
};
}