2013-07-10 52 views
6

我剛剛在閱讀this article後意識到我無法向自己解釋它是如何工作的以及它可以解決哪些問題。Tapestry mixin的工作原理是什麼?

是的,它可以用來改變現有組件的行爲。但是它是如何被限制的?我能做什麼,我做不到?它比繼承好嗎?

This article是有幫助的,但我仍然很困惑。

可以解釋使用簡單的話掛毯混入

回答

7

Tapestry Mixin是應該附加到另一個組件並且不能擁有自己模板的組件的受限版本。它可以訪問容器參數,並可以引入它自己的參數。它不比繼承好。這是改變組件行爲的不同方式。

所以,你可以用不能用繼承來實現混入做:

  • 你可以改變核心Tapestry組件的行爲
  • 你可以使用一個以上的混入一個組件

約mixinns一些換句話說:

  • 它們通常引入一些共同邏輯可應用於所有組件,例如在某些客戶端事件上提交表單或在某些字段附加彈出式幫助
  • 他們可以修復核心組件的某些問題,例如,我們有mixin修復上傳組件,當它以ajax形式使用時
相關問題