Class yii\widgets\ListView

继承yii\widgets\ListView » yii\widgets\BaseListView » yii\base\Widget » yii\base\Component » yii\base\BaseObject
实现yii\base\Configurable, yii\base\ViewContextInterface
可用自版本2.0
源代码 https://github.com/yiisoft/yii2/blob/master/framework/widgets/ListView.php

ListView 小部件用于显示来自数据提供者的数据. 使用指定的视图渲染每个数据模型都.

有关 ListView 的更多详细信息和使用信息, 请参阅 权威指南 - 显示数据 - 数据小部件(Data Widgets).

公共属性

隐藏继承的属性

属性类型描述定义在
$afterItem Closure 在渲染每个数据模型之后立即调用一次的匿名函数. yii\widgets\ListView
$autoIdPrefix string 自动生成的小部件 ID 的前缀. yii\base\Widget
$beforeItem Closure 在渲染每个数据模型之前被调用一次的匿名函数. yii\widgets\ListView
$behaviors yii\base\Behavior[] 附加到此组件的行为列表. 该属性是只读的. yii\base\Component
$counter integer 用于为小部件生成 $id 的计数器. yii\base\Widget
$dataProvider yii\data\DataProviderInterface 视图的数据提供者. yii\widgets\BaseListView
$emptyText string|false $dataProvider 没有任何数据时要显示的 HTML 内容. yii\widgets\BaseListView
$emptyTextOptions array 列表视图的 $emptyText 的 HTML 属性. yii\widgets\BaseListView
$id string|null 小部件的 ID. Note: 此属性的类型在 getter 和 setter 中不同. 有关详细信息, 请参阅 getId()setId(). yii\base\Widget
$itemOptions array|Closure 每个数据模型的渲染结果的容器的 HTML 属性. yii\widgets\ListView
$itemView string|callable 用于渲染每个数据项的视图的名称或用于渲染每个数据项的回调(eg. yii\widgets\ListView
$layout string 决定如何组织列表视图的不同部分的布局. yii\widgets\BaseListView
$options array 列表视图的容器标签的 HTML 属性. yii\widgets\ListView
$pager array 分页小部件的配置. yii\widgets\BaseListView
$separator string 要在任何两个连续项目之间显示的 HTML 代码. yii\widgets\ListView
$showOnEmpty boolean 如果 $dataProvider 不返回任何数据, 是否显示一个空的列表视图. yii\widgets\BaseListView
$sorter array 排序小部件的配置. yii\widgets\BaseListView
$stack yii\base\Widget[] 当前正在渲染的小部件(未结束). yii\base\Widget
$summary string 将 HTML 内容显示为列表视图的摘要. yii\widgets\BaseListView
$summaryOptions array 列表视图摘要的 HTML 属性. yii\widgets\BaseListView
$view yii\web\View 可用于渲染视图或视图文件的视图对象. Note: 此属性的类型在 getter 和 setter 中不同. 有关详细信息, 请参阅 getView()setView(). yii\base\Widget
$viewParams array 渲染时要传递给 $itemView 的其它参数. yii\widgets\ListView
$viewPath string 包含此小部件的视图文件的目录. 该属性是只读的. yii\base\Widget

公共方法

隐藏继承的方法

方法描述定义在
__call() 调用不是类方法的指定的方法. yii\base\Component
__clone() 在通过克隆现有对象创建对象之后调用此方法. yii\base\Component
__construct() 构造函数. yii\base\BaseObject
__get() 返回组件属性的值. yii\base\Component
__isset() 检查属性是否已设置, 即已定义且不为null. yii\base\Component
__set() 设置组件属性的值. yii\base\Component
__unset() 将组件属性设置为null. yii\base\Component
afterRun() 在执行小部件后立即调用该方法. yii\base\Widget
attachBehavior() 将行为附加到此组件. yii\base\Component
attachBehaviors() 将行为列表附加到组件. yii\base\Component
beforeRun() 在执行小部件之前立即调用该方法. yii\base\Widget
begin() 开始一个小部件. yii\base\Widget
behaviors() 返回此组件应该具有的行为列表. yii\base\Component
canGetProperty() 返回一个值, 指示属性是否可读取. yii\base\Component
canSetProperty() 返回一个值, 指示属性是否可设置. yii\base\Component
className() 返回此类的完全限定名称. yii\base\BaseObject
detachBehavior() 从组件中分离一个行为. yii\base\Component
detachBehaviors() 分离组件中的所有行为. yii\base\Component
end() 结束小部件. yii\base\Widget
ensureBehaviors() 确保在 behaviors() 中声明的行为已附加到此组件. yii\base\Component
getBehavior() 返回指定的行为对象. yii\base\Component
getBehaviors() 返回附加到此组件的所有行为. yii\base\Component
getId() 返回小部件的 ID. yii\base\Widget
getView() 返回可用于渲染视图或视图文件的视图对象. yii\base\Widget
getViewPath() yii\base\ViewContextInterface
hasEventHandlers() 返回一个值, 指示是否有任何处理程序附加到指定的事件. yii\base\Component
hasMethod() 返回一个值, 指示方法是否已定义. yii\base\Component
hasProperty() 返回一个值, 指示属性是否已定义. yii\base\Component
init() 初始化视图. yii\widgets\BaseListView
off() 从该组件分离现有的事件处理程序. yii\base\Component
on() 将事件处理程序附加到事件. yii\base\Component
render() 渲染视图. yii\base\Widget
renderEmpty() 渲染指示列表视图没有数据的 HTML 内容. yii\widgets\BaseListView
renderFile() 渲染视图文件. yii\base\Widget
renderItem() 渲染单个数据模型. yii\widgets\ListView
renderItems() 渲染所有数据模型. yii\widgets\ListView
renderPager() 渲染分页. yii\widgets\BaseListView
renderSection() 渲染指定名称的部分. yii\widgets\BaseListView
renderSorter() 渲染排序. yii\widgets\BaseListView
renderSummary() 渲染摘要文本. yii\widgets\BaseListView
run() 运行小部件. yii\widgets\BaseListView
setId() 设置小部件的 ID. yii\base\Widget
setView() 设置此小部件要使用的视图对象. yii\base\Widget
trigger() 触发事件. yii\base\Component
widget() 创建一个小部件实例并运行它. yii\base\Widget

受保护的方法

隐藏继承的方法

方法描述定义在
renderAfterItem() 调用 $afterItem 闭包(closure), 返回执行结果. yii\widgets\ListView
renderBeforeItem() 调用 $beforeItem 闭包(closure), 返回执行结果. yii\widgets\ListView

事件

隐藏继承的事件

事件类型描述定义在
EVENT_AFTER_RUN yii\base\WidgetEvent 在执行小部件之后立即触发的事件. (available since version 2.0.11) yii\base\Widget
EVENT_BEFORE_RUN yii\base\WidgetEvent 在执行小部件之前触发的事件. (available since version 2.0.11) yii\base\Widget
EVENT_INIT yii\base\Event 当通过 init() 初始化小部件时触发的事件. (available since version 2.0.11) yii\base\Widget

属性详情

$afterItem public 属性 (可用自版本: 2.0.11)

在渲染每个数据模型之后立即调用一次的匿名函数.

它应该和 $beforeItem 具有相同的签名.

函数的返回结果将直接呈现.

Note: 如果该函数返回null, 则在该项目之后不会渲染任何内容.

参见 renderAfterItem().

public Closure $afterItem null
$beforeItem public 属性 (可用自版本: 2.0.11)

在渲染每个数据模型之前被调用一次的匿名函数.

它应该具有以下签名:

function ($model, $key, $index, $widget)
  • $model: 当前正在渲染的数据模型.
  • $key: 与当前数据模型关联的键值.
  • $index: 由 $dataProvider 返回的模型数组中的数据模型的从0开始的索引.
  • $widget: ListView 对象.

函数的返回结果将直接呈现.

Note: 如果该函数返回null, 则在该项目之前不会渲染任何内容.

参见 renderBeforeItem().

public Closure $beforeItem null
$itemOptions public 属性

每个数据模型的渲染结果的容器的 HTML 属性.

这可以是指定用于渲染每个数据项的常见 HTML 属性的数组, 也可以是返回 HTML 属性数组的匿名函数.

对于由 $dataProvider 返回的每个数据模型, 匿名函数将被调用一次.

tag元素指定容器元素的标签名称, 默认为div. 如果tagfalse, 则表示不会渲染容器元素.

如果将此属性指定为匿名函数, 则它应具有以下签名:

function ($model, $key, $index, $widget)

参见 yii\helpers\Html::renderTagAttributes() 有关如何渲染属性的详细信息.

$itemView public 属性

用于渲染每个数据项的视图的名称或用于渲染每个数据项的回调(eg. 匿名函数).

如果它指定了视图名称, 那么以下变量将在视图中可用:

  • $model: mixed, 数据模型;
  • $key: mixed, 与数据项关联的键值;
  • $index: integer, 由 $dataProvider 返回的 items 中的数据项的从0开始的索引;
  • $widget: ListView, 此小部件实例.

Note: 视图名称由 $view 对象的当前上下文解析为视图文件.

如果将此属性指定为匿名函数, 则它应具有以下签名:

function ($model, $key, $index, $widget)
public string|callable $itemView null
$options public 属性

列表视图的容器标签的 HTML 属性. tag元素指定容器元素的标签名称, 默认为div.

参见 yii\helpers\Html::renderTagAttributes() 有关如何渲染属性的详细信息.

public array $options = ['class' => 'list-view']
$separator public 属性

要在任何两个连续项目之间显示的 HTML 代码.

public string $separator "\n"
$viewParams public 属性

渲染时要传递给 $itemView 的其它参数. 仅当 $itemView 是表示视图名称的字符串时, 才使用此属性.

public array $viewParams = []

方法详情

renderAfterItem() protected 方法 (可用自版本: 2.0.11)

调用 $afterItem 闭包(closure), 返回执行结果.

如果 $afterItem 不是闭包(closure), 则将返回null.

参见 $afterItem.

protected string|null renderAfterItem ( $model, $key, $index )
$model mixed

要渲染的数据模型.

$key mixed

与当前数据模型关联的键值.

$index integer

$dataProvider 返回的模型数组中的数据模型的从0开始的索引.

return string|null

$afterItem 调用结果, 或当 $afterItem 不是闭包(closure)时返回null.

renderBeforeItem() protected 方法 (可用自版本: 2.0.11)

调用 $beforeItem 闭包(closure), 返回执行结果.

如果 $beforeItem 不是闭包(closure), 则将返回null.

参见 $beforeItem.

protected string|null renderBeforeItem ( $model, $key, $index )
$model mixed

要渲染的数据模型.

$key mixed

与当前数据模型关联的键值.

$index integer

$dataProvider 返回的模型数组中的数据模型的从0开始的索引.

return string|null

$beforeItem 调用结果, 或当 $beforeItem 不是闭包(closure)时返回null.

renderItem() public 方法

渲染单个数据模型.

public string renderItem ( $model, $key, $index )
$model mixed

要渲染的数据模型.

$key mixed

与当前数据模型关联的键值.

$index integer

$dataProvider 返回的模型数组中的数据模型的从0开始的索引.

return string

渲染结果.

renderItems() public 方法

渲染所有数据模型.

public string renderItems ( )
return string

渲染结果.