很抱歉,如果我使用错误的关键字。由于错误的关键字,我可能无法获得足够的信息。
我们通过这种方式在Yii中创建小部件:
class streamList extends CWidget {
//do some stuff
}
此外,我们将此窗口小部件用作
$this->widget("application.components.widget.streamList");
我们如何以接受参数
的方式编写窗口小部件$this->widget("application.components.widget.streamList",array('title'=>'Posts');
我用谷歌搜索但没有解决。请提前帮助,谢谢。
修改日志
另外,我们如何将默认参数值定义为'titile'?我试过了public $title = Shk::getTitle()
,但它没有用。
答案 0 :(得分:11)
使用
class StreamList extends CWidget {
//do some stuff
public $title;
}
任何属性都可以使用默认值初始化并由
覆盖$this->widget("application.components.widget.StreamList",array('title'=>'Posts',.....)
修改强>
您无法使用函数初始化类属性。给出了解释here。一个选项是检查$title
是否已设置,如果未在Shk::getTitle()
方法中将其设置为init()
,则
public function init(){
....
if(!isset($this->title) || !$this->title)
$this->title=Shk::getTitle();
....
}
为了保持一致性,最好将你的班级名称大写。