Yii 2.0 Class 找不到 Pjax

Yii 2.0 Class Pjax not found

我正在使用 Yii 2.0 基本版,我正在尝试使用 Pjax,但文档非常不明确,我无法理解这个小部件是否已经与基本包一起安装或者我是否应该安装它。

我试过在我的模板上使用它:

<?php Pjax::begin(); ?>
    <a href="<?php echo Base_URL; ?>?r=site/pjax">ALO</a>
<?php Pjax::end(); ?>

但它不起作用我得到: Class 'Pjax' 未找到

我已经尝试使用我找到的本指南通过 bower 安装它,但我无法理解服务器配置部分,并且在 运行 执行命令(bower 安装...)后它仍然没有在职的 https://github.com/yiisoft/jquery-pjax

有人可以启发我吗?

我真的很想在我的项目中使用 Pjax 来提高它的速度 (这是对数据的大量使用,我需要它通过不重新加载永远不会改变的东西来 运行 更快)。

试试看:

<?php \yii\widgets\Pjax::begin(); ?>
    <a href="<?php echo Base_URL; ?>?r=site/pjax">ALO</a>
<?php \yii\widgets\Pjax::end(); ?>

默认包含Pjax小部件,无需额外安装。

您的问题与命名空间有关。

在使用部分指定完整的命名空间:

use yii\widgets\Pjax;

然后将其用作Pjax

或者像这样用前导反斜杠指定完整的命名空间:\yii\widgets\Pjax.

大多数时候使用第一个选项是更灵活的方法。

如果您未指定任何内容,Pjax 将被视为位于根命名空间中,显然它不存在于此。

阅读 official PHP documentation 中有关名称空间的更多信息。

这里是 Yii 2 official documentation 的 Pjax 小部件。

您可以在此处查看已用 类 的完整命名空间。