У меня этот угловой контроллер:
app.controller("timelineCtrl", function ($scope) {
$scope.user="john";
.
.
.
}
И эта директива:
app.directive('helloWorld', function() {
return {
restrict: 'AE',
replace: true,
template: '<div> Hello World {{user}} </div>'
};
});
и эта точка зрения:
<div class="row" ng-controller="timelineCtrl">
<hello-world></hello-world>
</div>
но я получаю это в результате html:
Hello World {{user}}
Почему {{user}}
не интерпретируется для значения $scope.user
?
Присоедините контроллер к определению своей директивы.
app.directive('helloWorld', function() {
return {
restrict: 'AE',
replace: true,
controller: 'timelineCtrl',
template: '<div> Hello World {{user}} </div>'
};
});
Редактировать; Учитывая ваше последнее редактирование, я не уверен, что это проблема, во всяком случае - здесь jsBin показывает вам, как это работает.
Просто уточнить (для тех, кто может это прочитать); вам не нужно прикреплять контроллер к вашей директиве. Вы можете, если хотите. В этом нет ничего плохого - даже если директива не предоставляет его собственный ребенок/изолированный объем.