请问一下为什么一定要用一个 run 方法呢? [ 2.0 版本 ]
<?php
namespace app\common\widgets\right;
use yii\db\Query;
use yii\base\Widget;
use app\common\DataCache;
class TaskWidget extends Widget
{
public $items = [];
public function init()
{
//首页前十条的最新需求
$task['top_new_task'] = DataCache::getHomeTask(1);
$task['top_hot_task'] = DataCache::getHomeHotTask(1);
$this->items = $task;
}
public function run()
{
$taskList = $this->items;
//print_r($starList);die;
return $this->render('task', [
'task' => $taskList
]);
}
}
最佳答案
其他 4 个回答
-
这是框架的一个神圣约定,为了简化Widget的调用过程的同时,作为Component的子类,缔造者们确保事件等相关机制和代码风格在Widget生命周期同样有效。
当然,假如你自己来造一个框架,你可以决定没有这个Run方法,这不影响最终结果。
或者,更复杂严谨但不神圣的——你可以用interface或者abstract来约束
共 1 条回复朱先生 觉得很赞
PHP学院的中学生
注册时间:2018-10-23
最后登录:2024-09-23
在线时长:168小时13分
最后登录:2024-09-23
在线时长:168小时13分
- 粉丝29
- 金钱4725
- 威望30
- 积分6705