我在AngularJS 1.5中編寫了一個名爲'news'的自定義指令。AngularJS可選ng-transclude
它的佈局如下:
<div class="row">
<div class="largeText shadow1" ng-transclude="heading"></div>
<div class="mediumText shadow2" ng-transclude="content"></div>
</div>
該指令的JavaScript文件如下:
return {
restrict: 'E',
transclude: {
'heading': 'heading',
'content': 'content'
},
scope: {
//Some parameters here
},
templateUrl: '/directives/news.html'
};
正如你看到的,我的消息的指令有兩個孩子,叫標題和內容領域。它可以使用如下:
<news>
<heading>
//Any content goes here
</heading>
<content>
//Any content goes here
</content>
</news>
到目前爲止,指令工作正常。我的意思是,只要標題和內容部分填充了一些內容,指令就會按預期顯示它們。但是,我試圖讓這些插入插槽不是強制性的。每當我使用該指令時:
<news>
<heading></heading>
</news>
AngularJS引發錯誤,說我沒有填充內容槽。是否有可能使這些插槽可選?
這就是我要找的,謝謝! –