2014-10-06 6 views
2

Я хочу, чтобы подчеркнуть свой основной HTML и хочу использовать собственные директивы для создания вкладки. Я хочу написать код для вкладки поле, как это:AngularJS: Доступ к дочерним элементам в директиве

<my-tab-box> 
    <my-tab label="Tab 1" active="true">Content 1</my-tab> 
    <my-tab label="Tab 2">Content 2</my-tab> 
</my-tab-box> 

Угловая следует перевести код выше, чтобы что-то вроде:

<div class="tab-box"> 
    <ul> 
    <li class="active">Tab 1</li> 
    <li>Tab 2</li> 
    </ul> 
    <div class="content"> 
    Content 1 
    </div> 
</div> 

Но я не знаю, как получить доступ к дочерним элементам от tab-box с точностью до tab-box директива. Мне нужно это, чтобы получить дочерний элемент, который имеет атрибут access="true" и получить внутренний HTML-код ребенка, чтобы отобразить его в элементе <div class="content">.

Как это реализовать? Я работаю против Угловой философии?

Спасибо! Malte

+0

В вашей директиве, вы можете добавить «$ часы», чтобы проверить, если конкретный элемент обновляется access = "true"? –

ответ

0

Вы можете лучше видеть, как это может работать, глядя на реализацию в угловом-загрузчике: https://github.com/angular-ui/bootstrap/blob/master/src/tabs/tabs.js

В принципе вы можете сделать директивы сотрудничать, имея родительскую директиву впрыскивается в вашу директиву ребенка («требуется: «MyTabBox» в вашем контроллере MyTab).

Вам также необходимо понять заключение.

В тот же сценарий также разъясняется в руководстве для разработчиков угловых в: См раздел «Создание директив, которые обмениваются данными» на https://docs.angularjs.org/guide/directive

Смежные вопросы