[英]Why and when to use transclusion in AngularJS
目前,我正在學習AngularJS,並且試圖了解包含功能。 我已經閱讀了有關包含的不同文章,現在我了解了transclude: true
和transclude: 'element'
之間的區別。
但是,對我來說不清楚的是何時應該使用它。 周圍有很多文章,但是我可以在現實世界中找到實際的用例。
因此,如果有人能幫助我並演示使用轉寫的真實示例並回答以下問題,我將不勝感激:
ng-repeat
而不是cloneFn
? 據我了解,當您需要容器時會使用transclude:true
。 這意味着,您不知道指令的用戶將把什么放入容器中。 一個示例對話框是一個對話框,它具有一些公共部分,包括標題,關閉按鈕等。但是您不希望限制可以放入此對話框的內容。 在這種情況下,請使用transclude:true
,以便可以將任何任意內容放入指令中。
參考: https : //docs.angularjs.org/guide/directive
我們已經看到可以使用isolate作用域將模型傳遞給指令,但是有時希望能夠傳遞整個模板而不是字符串或對象。 假設我們要創建一個“對話框”組件。 該對話框應該能夠包裝任意內容。
它或多或少不是性能考慮因素。 只需將指令的靈活性引入即可。
ng-repeat
是一個不同的故事。 它用於迭代一些可迭代的集合。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.