2013-10-31 109 views
12

爲什麼不只是總是使用嵌入?枝條嵌入vs包括,任何使用原因包括

根據文檔,embed標籤結合了include和extend標籤的行爲。

我明白,在很多情況下,您不需要進行擴展,只想渲染另一個模板的內容,但在我看來,您可能總是使用嵌入並實現該目的。是否有嵌入的任何性能影響要意識到?我錯過了任何功能差異?

+0

類似的問題 - 「擴展或包括 - 什麼是更好的小枝?」:http://stackoverflow.com/questions/7051743/extending-or-including-what-is-better-in-twig – Isinlor

回答

14

我會總結異同EmbedInclude如下之間,

  • 兩人都加入到樹枝,使HTML代碼片段重用。
  • 兩者都用於功能分離模板(頁腳,標題,...)
  • 兩者都是動態的。
  • Include用於包裝具有非靈活HTML結構的代碼。
  • Embed允許靈活性。

基礎上的差異,Include應使用只有當你需要一個模板分割成許多功能子模板和其他地方重用代碼包裹

雖然Embed用於需要自定義可重用模板的情況。

因此,它更多的設計比什麼都重要的問題(性能,代碼執行,...)

選擇適合您需要的幫手。

+1

好的謝謝,但是我的問題是:嵌入是否允許靈活性,爲什麼不總是使用它。即使您的模板現在不需要靈活的結構,它可能會在將來,這將阻止您必須做出更改 – DMTintner

+0

我更新了我的答案,您可以在任何地方使用嵌入,這是一個設計問題。我個人習慣只在需要時才使用嵌入。 –

+0

謝謝,你能確認兩者之間沒有性能差異嗎? – DMTintner