Улучшить эту документацию Посмотреть исходный код ngRef
- директива в модуле ng
Обзор
Атрибут ngRef сообщает AngularJS о привязке контроллера компонента (или директивы) к заданному свойству текущего контекста. Также возможно добавить обернутый jqlite элемент DOM в контекст.
Если элемент с ngRef уничтожен null присваивается свойству.
Обратите внимание, что если вы хотите присвоить значение из дочернего контекста в родительский, необходимо инициализировать целевое свойство в родительском контексте, иначе ngRef будет присвоено в дочернем контексте. Это часто происходит при присваивании элементов или компонентов, обернутых в ngIf или ngRepeat. См. второй пример ниже.
Информация о директиве
- Эта директива выполняется на уровне приоритета 0.
Использование
- в качестве атрибута:
<ANY ng-ref="string" [ng-ref-read="string"]> ... </ANY>
Аргументы
| Параметр | Тип | Подробности |
|---|---|---|
| ngRef | string |
имя свойства - допустимый идентификатор выражения AngularJS, к которому будет привязан контроллер или обернутый jqlite-элемент DOM. |
| ngRefRead (необязательно) |
string |
значение для чтения - имя директивы (или компонента) на этом элементе или специальная строка |
Примеры
Простой переключатель
В этом примере показано, как контроллер компонента переключателя повторно используется в шаблоне через область видимости для использования его логики.
ngRef внутри областей видимости
В этом примере показано, как ngRef работает с дочерними областями видимости. Компоненты ngRepeat-ed myWrapper присваиваются области видимости myRoot, потому что свойство toggles было инициализировано. Повторные компоненты myToggle публикуются в дочерние области видимости, созданные ngRepeat. ngIf ведет себя аналогично - присвоение myToggle происходит в дочерней области видимости ngIf, потому что целевое свойство не было инициализировано в контроллере компонента myRoot.
© 2010–2020 Google, Inc.
Licensed under the Creative Commons Attribution License 3.0.
https://code.angularjs.org/1.8.2/docs/api/ng/directive/ngRef