, если вы посмотрите на http://jsfiddle.net/Zuriel/fdrtpjgd/как я могу разделить атрибуты родительской директивы с ребенком директивы
мой вопрос, как я могу передать атрибут из родительской директивы в директиве ребенка вложенной.
предполагая, что родитель и ребенок является <container><insides></insides></container>
, если вы посмотрите на моей скрипке, вы увидите, что ребенок нуждается в некоторой области видимости помощи. если я использую $ scope, тогда я получаю пропуск, но его та же область для каждой директивы, что плохо. но если я использую область действия, то она работает внутри каждой директивы, но родительский атрибут не проходит. Мне нужен компилятор? пройти и скомпилировать? или я могу сделать это со ссылкой, и я просто что-то пропустил.
app.directive('container', function() {
return {
restrict: 'EA',
replace: true,
transclude: true,
$scope: {
passthrough: '@'
},
link: function($scope, element, attrs) {
$scope.passthrough = attrs.greeting;
console.log($scope.passthrough);
},
template: '<div class="container">{{passthrough}} <div ng-transclude></div></div>'
}
});
app.directive('insides', function() {
return {
restrict: 'EA',
replace: 'true',
require: '^container',
transclude:true,
//template: '<div class="insides">{{passthrough}} <span ng-transclude></span></div>'
template: function ($scope) {
console.log($scope.passthrough);
return '<div class="insides">{{ passthrough }} <span style="color:red" ng-transclude></span></div>';
},
}
});