Transclude işaretlemesinde direktif içine konur yakalama her şeyi açısal anlatmak ve bir yerde kullanmak için bir ayardır (aslında nerede ng-transclude
yer almaktadır) yönerge şablonda. Bu konu hakkında daha fazla bilgiyi direktiflerin dokümantasyonuna ilişkin Diğer Unsurları Sarma Eden Direktif Oluşturma bölümünde bulabilirsiniz .
Özel bir yönerge yazarsanız, direktif şablonunda öğenin içeriğini eklemek istediğiniz noktayı işaretlemek için ng-transclude komutunu kullanırsınız
angular.module('app', [])
.directive('hero', function () {
return {
restrict: 'E',
transclude: true,
scope: { name:'@' },
template: '<div>' +
'<div>{{name}}</div><br>' +
'<div ng-transclude></div>' +
'</div>'
};
});
Bunu işaretlemenize koyarsanız
<hero name="superman">Stuff inside the custom directive</hero>
Şu şekilde görünecektir:
Süpermen
Özel yönerge içindeki bilgiler
Tam örnek:
Index.html
<body ng-app="myApp">
<div class="AAA">
<hero name="superman">Stuff inside the custom directive</hero>
</div>
</body>
jscript.js
angular.module('myApp', []).directive('hero', function () {
return {
restrict: 'E',
transclude: true,
scope: { name:'@' },
template: '<div>' +
'<div>{{name}}</div><br>' +
'<div ng-transclude></div>' +
'</div>'
};
});
Output markup
Görselleştir: