Yii将参数传递给小部件
对不起,如果我使用了错误的关键字。可能是我没有得到足够的信息,由于错误的关键字 我们通过以下方式在Yii中创建小部件:Yii将参数传递给小部件,yii,yii-components,Yii,Yii Components,对不起,如果我使用了错误的关键字。可能是我没有得到足够的信息,由于错误的关键字 我们通过以下方式在Yii中创建小部件: class streamList extends CWidget { //do some stuff } 此外,我们在任何地方都可以使用这个小部件 $this->widget("application.components.widget.streamList"); 我们如何编写小部件,使其接受参数作为 我在谷歌上搜索了一下,但没有找到答案。请帮忙,提前谢谢 编辑日
class streamList extends CWidget {
//do some stuff
}
此外,我们在任何地方都可以使用这个小部件
$this->widget("application.components.widget.streamList");
我们如何编写小部件,使其接受参数作为
我在谷歌上搜索了一下,但没有找到答案。请帮忙,提前谢谢
编辑日志:
另外,我们如何将默认参数值定义为“titile”?我尝试了public$title=Shk::getTitle()
,但没有成功。使用
class StreamList extends CWidget {
//do some stuff
public $title;
}
任何属性都可以用默认值初始化,并由
$this->widget("application.components.widget.StreamList",array('title'=>'Posts',.....)
编辑
不能使用函数初始化类属性。给出了解释。一个选项是检查是否设置了$title
,如果未设置,则在init()
方法中将其设置为Shk::getTitle()
,如
public function init(){
....
if(!isset($this->title) || !$this->title)
$this->title=Shk::getTitle();
....
}
为了保持一致性,最好将类名大写。文件
Shk
是否自动加载?错误不在类中,而在初始化中。因此,我编辑了答案。
public function init(){
....
if(!isset($this->title) || !$this->title)
$this->title=Shk::getTitle();
....
}