ホームページ > バックエンド開発 > PHPチュートリアル > 请问YII2的自定义组件应该放在什么位置,用什么文件名

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

WBOY
リリース: 2016-06-06 20:10:14
オリジナル
1308 人が閲覧しました

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

class HelloWidget extends Widget
{

<code>public $message;

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

public function run()
{
    return Html::encode($this->message);
}</code>
ログイン後にコピー
ログイン後にコピー

}

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

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

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

回复内容:

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

class HelloWidget extends Widget
{

<code>public $message;

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

public function run()
{
    return Html::encode($this->message);
}</code>
ログイン後にコピー
ログイン後にコピー

}

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

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

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

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

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート