Как получить доступ к локальной переменной, обернутой внутри шаблона ng-bootstrap, в нашем компоненте в Angular js 2?

Я использую ngBootstrap с angular 2 и использую набор вкладок, как показано ниже.

<ngb-tabset  class="cab-navbar-active active">
    <ngb-tab>
        <template ngbTabTitle>
            <div>SOME
                <span class="badge badge-warning" style="margin-left: 10px;">{{someList?.length}}</span>
            </div>
        </template>
        <template ngbTabContent>
            <p-dataTable #pDataTable [value]="someList" [rows]="5" [paginator]="true" [totalRecords]="totalRecords" sortMode="multiple" emptyMessage=""> 
                <p-column *ngFor="let col of cCols" [field]="col.field" [header]="col.header | uppercase" [sortable]="true" [style]="col.style">                        
                </p-column>
            </p-dataTable>
        </template>
    </ngb-tab>
</ngb-tabset>

Что ж, если вы видите, что я определил локальную переменную шаблона с именем #pDataTable, и мы можем получить доступ с помощью @ViewChild, но для меня это неопределенно.

Но когда я определяю p-dataTable вне ngb-tabset, он работает, я могу получить к нему доступ.

Я не понимаю, в чем здесь проблема, я пробовал и @ViewChild, и @ConentChildern, но безуспешно.

Пожалуйста, дайте мне знать, правильный способ доступа к локальной переменной, завернутой в шаблон набора вкладок ng-bootstrap в нашем определенном компоненте.


person Viraj    schedule 03.03.2017    source источник
comment
stackoverflow.com/questions/42534524 /   -  person yurzui    schedule 03.03.2017
comment
Да, он работает правильно, когда активируется вкладка, и он не устанавливает значение ViewChild изначально. Мой плохой я не смотрел должным образом.   -  person Viraj    schedule 03.03.2017