Transclude adalah pengaturan untuk memberitahu angular untuk menangkap semua yang dimasukkan ke dalam direktif dalam markup dan menggunakannya di suatu tempat (Di mana sebenarnya ng-transclude
adalah di) dalam template direktif. Baca lebih lanjut tentang ini di bawah Membuat Petunjuk yang Membungkus Bagian Elemen Lain tentang dokumentasi arahan .
Jika Anda menulis arahan khusus, Anda menggunakan ng-transclude dalam template direktif untuk menandai titik di mana Anda ingin memasukkan isi elemen
angular.module('app', [])
.directive('hero', function () {
return {
restrict: 'E',
transclude: true,
scope: { name:'@' },
template: '<div>' +
'<div>{{name}}</div><br>' +
'<div ng-transclude></div>' +
'</div>'
};
});
Jika Anda menempatkan ini di markup Anda
<hero name="superman">Stuff inside the custom directive</hero>
Itu akan muncul seperti:
Superman
Hal-hal di dalam arahan khusus
Contoh lengkap:
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
Visualisasikan: