请问YII2的自定义组件应该放在什么位置,用什么文件名

//定义是MyController.php
<?php
namespace appcomponents;
use yiibaseWidget;
use yiihelpersHtml;

class HelloWidget extends Widget
{

public $message;

public function init()
{
    parent::init();
    if ($this->message === null) {
        $this->message = 'Hello World';
    }
}

public function run()
{
    return Html::encode($this->message);
}

}

//然后调用是在view中
<?php
use appcomponentsHelloWidget;
?>
<?= HelloWidget::widget(['message' => 'Good morning']) ?>

//结果报错找不到组件
Class 'appcomponentsHelloWidget' not found

请问我定义是不是错了呀?

阅读 2.6k
1 个回答

命名空间的问题
很少用app开始的明明空间,一般都是common/components;或者根据模块来,frontend backend

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题