Вот, например есть селект и директива, меняющая текст в зависимости от значения селекта (
рабочий пример):
app.jsangular.module('myApp',[]);
angular.module('myApp')
.controller('myCtrl',[ '$scope',
function($scope){
$scope.options = [
{name:'text1'},
{name:'text2'}
];
$scope.selectedText = $scope.options[0];
}
])
.directive('myDirective', [ function () {
return {
restrict: 'AE',
scope: {
selectedValue: '=ngModel',
},
templateUrl: 'directive-template.html',
link: function(scope,elem,attrs) {
},
controller: function($scope) {
$scope.isChosen = function(v) {
return $scope.selectedValue == v;
};
}
};
}])
;
index.html<body ng-controller="myCtrl">
<p>Hello world!</p>
<select ng-model="selectedText" ng-options="opt.name for opt in options"></select>
<div ng-model="selectedText.name" my-directive=""></div>
</body>
directive-template.html<div>
<h1 ng-show="isChosen('text1')"> ТЕКСТ 1 </h1>
<h1 ng-show="isChosen('text2')"> ТЕКСТ 2 </h1>
</div>