我正在深入学习Yii2的过程,所以我想知道是否有可能让一个小部件在控制器中有类似的操作?Yii2。小部件和操作
在例如:
class WTest extends Widget {
public ...;
public function init() {
...
}
public function run() {
Pjax::begin();
echo "<a href='".Yii::$app->urlManager->createAbsoluteUrl("test/add")."'>Add test</a>";
Pjax::end();
}
public function addThing() {
echo "hola"
}
}
然后在控制器做:
class TestController extends Controller
{
public function actionAdd() {
$wObj = new WTest;
return $wObj->addThing();
}
}
有这样的问题是,我失去调用形式widget时设置的所有参数,因为我我叫“新WTest”,这是一个新的例子。我也试过使用静态方法,但类似的问题,任何想法?
UPDATE 在视图中,我打电话小部件是这样的:
WTest::widget([
'test' => 'hi'
]);
如果你想只有一个实例引导我正确的方向,你应该使用'singleton'模式吧。 – ThanhPV
你能举个例子吗?我不知道如何申请单身人士在这种情况下 – Eduardo