在 Smarty 中使用 Yii2 Bootstrap 小部件

Using Yii2 Bootstrap widgets with Smarty

我把 Yii2 和 Smarty 一起安装了,以供参考。

Smarty 本身可以工作,但我不知道如何将 bootstrap 小部件与 smarty 一起使用,也找不到任何示例。

使用默认的 Yii 渲染器,小部件工作得很好,并且有很多示例可用。但是当使用 Smarty 模板时,文档几乎不存在。

我将如何使用 Smarty 定义这个示例?

echo Alert::widget([
   'options' => [
      'class' => 'alert-info',
   ],
   'body' => 'Alert widget',
]);

显然第一件事是

{use class="yii\bootstrap\Alert"}

但我找不到如何定义小部件本身的示例。

你应该试试这个:

{use class='@yii\bootstrap\Alert' type='function'}
{Alert body='Alert widget' options=['class' => 'alert-info']}

阅读更多:http://www.yiiframework.com/doc-2.0/guide-tutorial-template-engines.html#importing-static-classes-using-widgets-as-functions-and-blocks

更改 config/web.php 并添加后:

'globals' => ['html' => '\yii\helpers\Html'],
'uses' => ['yii\bootstrap'],

在视图部分,它有效。

{use class='yii\bootstrap\Alert' type='function'} 
{Alert body='Alert' options=['class' => 'alert-info']}

所以没有@soju 建议。