組件是 YII 應用的主要基石。?? ? ? ? ? ?(推薦學習:yii教程)
是 yiibaseComponent 類或其子類的實例。 三個用以區分它和其它類的主要功能有:
屬性(Property)
行為(Behavior)
或單獨使用,或彼此配合,這些功能的應用讓 Yii 的類變得更加靈活和易用。 以小部件?yiijuiDatePicker?來舉例, 這是個方便你在?視圖?中生成一個交互式日期選擇器的 UI 組件:
use?yiijuiDatePicker; echo?DatePicker::widget([ ????'language'?=>?'zh-CN', ????'name'??=>?'country', ????'clientOptions'?=>?[ ????????'dateFormat'?=>?'yy-mm-dd', ????], ]);
這個小部件繼承自 yiibaseComponent,它的各項屬性改寫起來會很容易。
正是因為組件功能的強大,他們比常規的對象(Object)稍微重量級一點,因為他們要使用額外的內存和 CPU 時間來處理?事件?和?行為?。
?如果你不需要這兩項功能,可以繼承 yiibaseObject ?而不是 yiibaseComponent。這樣組件可以像普通 php 對象一樣高效, 同時還支持屬性(Property)功能。
當繼承 yiibaseComponent 或 yiibaseObject 時, 推薦你使用如下的編碼風格:
若你需要重寫構造方法(constructor),傳入?$config?作為構造器方法最后一個參數, 然后把它傳遞給父類的構造方法。
永遠在你重寫的構造方法結尾處調用一下父類的構造方法。
如果你重寫了 yiibaseObject::init() 方法,請確保你在?init?方法的開頭處調用了父類的?init?方法。
? 版權聲明
文章版權歸作者所有,未經允許請勿轉載。
THE END