1
我有只加载这样的模板指令:Angularjs显示了基于控制器的可变指令
app.directive("sidebar", function(RESOURCE_URL) {
return {
templateUrl: RESOURCE_URL + 'sidebar.html'
};
});
的HTML看起来像这样:
<sidebar ng-controller="sidebarCtrl" ng-show="ready"></sidebar>
而且控制器:
app.controller('sidebarCtrl', function($scope, authService) {
$scope.service = authService;
$scope.ready = false;
$scope.user = {};
$scope.$watch('service.getUser()', function(value){
$scope.user = value;
$scope.ready = true;
});
});
有没有办法简单地使指令使用控制器的范围变量?或者在这种情况下使用什么常用方法?
您可以简单地用一个服务变量来保存常用的变量,在控制器和指令注入它既.. – 2014-11-01 03:43:27
指令可以有控制器了。只需将'controller:'sidebarCtrl''添加到您的指令中,并从HTML中删除'ng-controller =“sidebarCtrl”'。 – 2014-11-01 07:31:28