Spec-Zone.ru › Yii 2.0

Класс yii\bootstrap\Nav

Все классы | Свойства | Методы | События
Наследование yii\bootstrap\Nav » yii\bootstrap\Widget » yii\base\Widget » yii\base\Component » yii\base\Object
Реализует yii\base\Configurable, yii\base\ViewContextInterface
Использует трейты yii\bootstrap\BootstrapWidgetTrait
Доступно с версии 2.0
Исходный код https://github.com/yiisoft/yii2-bootstrap/blob/master/Nav.php

Nav отображает компонент HTML nav.

Например:

echo Nav::widget([
    'items' => [
        [
            'label' => 'Home',
            'url' => ['site/index'],
            'linkOptions' => [...],
        ],
        [
            'label' => 'Dropdown',
            'items' => [
                 ['label' => 'Level 1 - Dropdown A', 'url' => '#'],
                 '<li class="divider"></li>',
                 '<li class="dropdown-header">Dropdown Header</li>',
                 ['label' => 'Level 1 - Dropdown B', 'url' => '#'],
            ],
        ],
        [
            'label' => 'Login',
            'url' => ['site/login'],
            'visible' => Yii::$app->user->isGuest
        ],
    ],
    'options' => ['class' =>'nav-pills'], // set this to nav-tab to get tab-styled navigation
]);

Примечание: Многоуровневые раскрывающиеся меню за пределами уровня 1 не поддерживаются в Bootstrap 3.

См. также:

  • http://getbootstrap.com/components/#dropdowns
  • http://getbootstrap.com/components/#nav

Общедоступные свойства

Свойство Тип Описание Определено в
$activateItems boolean Автоматически активировать элементы в соответствии с тем, соответствует ли их путь текущему запрошенному пути. yii\bootstrap\Nav
$activateParents boolean Активировать родительские элементы меню, когда один из соответствующих дочерних элементов меню активен. yii\bootstrap\Nav
$autoIdPrefix string Префикс для автоматически сгенерированных идентификаторов виджета. yii\base\Widget
$behaviors yii\base\Behavior[] Список прикрепленных к этому компоненту поведений. yii\base\Component
$clientEvents array Обработчики событий для базового плагина Bootstrap JS. yii\bootstrap\BootstrapWidgetTrait
$clientOptions array Параметры для базового плагина Bootstrap JS. yii\bootstrap\BootstrapWidgetTrait
$counter integer Счетчик, используемый для генерации $id для виджетов. yii\base\Widget
$dropDownCaret string Это свойство позволяет настраивать HTML, используемый для генерации символа раскрывающегося списка, который отображается рядом с текстом кнопки для обозначения функциональности раскрывающегося списка. yii\bootstrap\Nav
$dropdownClass string Имя класса для отображения раскрывающихся списков в этом виджете. yii\bootstrap\Nav
$encodeLabels boolean Нужно ли кодировать метки элементов nav. yii\bootstrap\Nav
$id string Идентификатор виджета. yii\base\Widget
$items array Список элементов в виджете nav. yii\bootstrap\Nav
$options array Атрибуты HTML для тега контейнера виджета. yii\bootstrap\Widget
$params array Параметры, используемые для определения активности элемента меню. yii\bootstrap\Nav
$route string Маршрут, используемый для определения активности элемента меню. yii\bootstrap\Nav
$stack yii\base\Widget[] Виджеты, которые в настоящее время отображаются (не завершены). yii\base\Widget
$view yii\web\View Объект представления, который можно использовать для отображения представлений или файлов представлений. yii\bootstrap\BootstrapWidgetTrait
$viewPath string Директория, содержащая файлы представлений для этого виджета. yii\base\Widget

Общедоступные методы

Метод Описание Определено в
__call() Вызывает именованный метод, который не является методом класса. yii\base\Object
__clone() Этот метод вызывается после того, как объект создан путём клонирования существующего. yii\base\Component
__construct() Конструктор. yii\base\Object
__get() Возвращает значение свойства объекта. yii\base\Object
__isset() Проверяет, установлено ли свойство, т.е. определено и не равно null. yii\base\Object
__set() Устанавливает значение свойства объекта. yii\base\Object
__unset() Устанавливает свойство объекта в null. yii\base\Object
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\Object
canSetProperty() Возвращает значение, указывающее, может ли свойство быть установлено. yii\base\Object
className() Возвращает полное квалифицированное имя этого класса. yii\base\Object
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() Возвращает идентификатор виджета. yii\base\Widget
getView() yii\bootstrap\BootstrapWidgetTrait
getViewPath() Возвращает каталог, содержащий файлы представления для этого виджета. yii\base\Widget
hasEventHandlers() Возвращает значение, указывающее, есть ли какой-либо обработчик, прикреплённый к указанному событию. yii\base\Component
hasMethod() Возвращает значение, указывающее, определён ли метод. yii\base\Object
hasProperty() Возвращает значение, указывающее, определено ли свойство. yii\base\Object
init() Инициализирует виджет. yii\bootstrap\Nav
off() Отсоединяет существующий обработчик событий от этого компонента. yii\base\Component
on() Прикрепляет обработчик событий к событию. yii\base\Component
render() Выводит представление. yii\base\Widget
renderFile() Выводит файл представления. yii\base\Widget
renderItem() Отображает элемент виджета. yii\bootstrap\Nav
renderItems() Выводит элементы виджета. yii\bootstrap\Nav
run() Отображает виджет. yii\bootstrap\Nav
setId() Устанавливает идентификатор виджета. yii\base\Widget
setView() Устанавливает объект представления, используемый этим виджетом. yii\base\Widget
trigger() Вызывает событие. yii\base\Component
widget() Создаёт экземпляр виджета и запускает его. yii\base\Widget

Защищенные методы

Метод Описание Определено в
isChildActive() Проверяет, активен ли дочерний элемент, при необходимости активируя родительский. yii\bootstrap\Nav
isItemActive() Проверяет, активен ли элемент меню. yii\bootstrap\Nav
registerClientEvents() Регистрирует обработчики событий JavaScript, перечисленные в $clientEvents. yii\bootstrap\BootstrapWidgetTrait
registerPlugin() Регистрирует конкретный плагин Bootstrap и связанные с ним события yii\bootstrap\BootstrapWidgetTrait
renderDropdown() Отображает заданные элементы в виде выпадающего списка. yii\bootstrap\Nav

События

Событие Тип Описание Определено в
EVENT_AFTER_RUN yii\base\WidgetEvent Событие, генерируемое сразу после выполнения виджета. (доступно с версии 2.0.11) yii\base\Widget
EVENT_BEFORE_RUN yii\base\WidgetEvent Событие, генерируемое сразу перед выполнением виджета. (доступно с версии 2.0.11) yii\base\Widget
EVENT_INIT yii\base\Event Событие, генерируемое при инициализации виджета через init(). (доступно с версии 2.0.11) yii\base\Widget

Подробное описание свойств

$activateItems общедоступное свойство

Указывает, следует ли автоматически активировать элементы в зависимости от того, соответствует ли их маршрут текущему запрошенному маршруту.

См. также isItemActive().

public boolean $activateItems = true

$activateParents общедоступное свойство

Включить родительские пункты меню, когда активен один из соответствующих дочерних пунктов меню.

public boolean $activateParents = false

$dropDownCaret свойство public

Это свойство позволяет настроить HTML, используемый для генерации символа раскрывающегося списка, который отображается рядом с текстом кнопки, чтобы указать функциональность раскрывающегося списка. По умолчанию null , что означает <span class="caret"></span> будет использоваться. Чтобы отключить символ, установите это свойство в пустую строку.

public string $dropDownCaret = null

$dropdownClass свойство public (доступно с версии 2.0.7)

Имя класса, используемого для отображения раскрывающихся списков в этом виджете. По умолчанию yii\bootstrap\Dropdown.

public string $dropdownClass = 'yii\bootstrap\Dropdown'

$encodeLabels свойство public

Нужно ли кодировать метки элементов навигации в HTML.

public boolean $encodeLabels = true

$items свойство public

Список элементов в виджете навигации. Каждый элемент массива представляет собой отдельный элемент меню, который может быть строкой или массивом со следующей структурой:

  • label: строка, обязательная, метка элемента навигации.
  • url: необязательный, URL элемента. По умолчанию "#".
  • visible: boolean, необязательный, отображать ли этот элемент меню. По умолчанию true.
  • linkOptions: массив, необязательный, атрибуты HTML ссылки элемента.
  • options: массив, необязательный, атрибуты HTML контейнера элемента (LI).
  • active: boolean, необязательный, нужно ли сделать элемент активным.
  • dropDownOptions: массив, необязательный, опции HTML, которые будут переданы виджету yii\bootstrap\Dropdown.
  • items: массив|строка, необязательный, конфигурационный массив для создания виджета yii\bootstrap\Dropdown, или строка, представляющая меню раскрывающегося списка. Обратите внимание, что Bootstrap не поддерживает вложенные подменю.
  • encode: boolean, необязательный, нужно ли кодировать метку в HTML. Если задано, переопределяет параметр $encodeLabels только для этого элемента.

Если элемент меню представляет собой строку, он будет отображен непосредственно без кодирования HTML.

public array $items = []

$params свойство public

Параметры, используемые для определения активности элемента меню. Если не задано, используется $_GET.

См. также:

  • $route
  • isItemActive()
public array $params = null

$route свойство public

Маршрут, используемый для определения активности элемента меню. Если не задано, используется маршрут текущего запроса.

См. также:

  • $params
  • isItemActive()
public string $route = null

Подробное описание методов

init() метод public

Инициализирует виджет.

public void init ( )

isChildActive() защищенный метод

Проверяет, активен ли дочерний элемент, при необходимости активируя родительский.

protected массив isChildActive ( $items, &$active )
$items массив

@см. items

$active boolean

Также сделать родителя активным

return массив

@см. items

isItemActive() защищенный метод

Проверяет, активен ли элемент меню.

Это делается путем проверки, соответствуют ли $route и $params тем, которые указаны в опции url элемента меню. Когда опция url элемента меню задается в виде массива, первый элемент интерпретируется как маршрут элемента, а остальные элементы — как связанные параметры. Только когда маршрут и параметры соответствуют $route и $params соответственно, элемент меню считается активным.

protected boolean isItemActive ( $item )
$item массив

Элемент меню для проверки

return boolean

Является ли элемент меню активным

renderDropdown() защищенный метод (доступно с версии 2.0.1)

Отображает заданные элементы как раскрывающийся список.

Этот метод вызывается для создания подменю.

protected строка renderDropdown ( $items, $parentItem )
$items массив

Заданные элементы. Обратитесь к yii\bootstrap\Dropdown::$items для структуры массива.

$parentItem массив

Информация о родительском элементе. Обратитесь к $items для структуры этого массива.

return строка

Результат отображения.

renderItem() метод public

Отображает элемент виджета.

public строка renderItem ( $item )
$item строка|массив

Элемент для отображения.

return строка

Результат отображения.

throws yii\base\InvalidConfigException

renderItems() метод public

Отображает элементы виджета.

public void renderItems ( )

run() метод public

Отображает виджет.

public void run ( )

© 2008–2017 by Yii Software LLC
Licensed under the three clause BSD license.
http://www.yiiframework.com/doc-2.0/yii-bootstrap-nav.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API