Bezdepbonusu7Программирование: статьи и ответы

Вопрос

Угловая вкладка пользовательского интерфейса не обновляется после скрытия

Автор вопроса: Mohamed NAOUALIОтветов: 1

Я пытаюсь скрыть вкладки, а затем отобразить их, но столкнулся с проблемой обновления. На самом деле, если я выбираю одну диаграмму, а затем нажимаю кнопку скрытия, чтобы отобразить сетку, она скрывает другие вкладки, но всегда отображает диаграммы nvD3 вместо сетки пользовательского интерфейса. даже на вкладке диаграмм, если я выберу вкладку 2, затем нажму кнопку скрытия, а затем кнопку "Показать", она активирует первую вкладку, но со второй выбранной диаграммой, а не с первой.

<uib-tabset>
<uib-tab heading="Test1" ng-hide=hideCharts>
  <nvd3 options="options" data="data"></nvd3>
</uib-tab>
<uib-tab heading="Test2" ng-hide=hideCharts>
  <nvd3 options="options" data="data1"></nvd3>
</uib-tab>
<uib-tab heading="Test3" ng-hide=hideCharts>
  <nvd3 options="options" data="data2"></nvd3>
</uib-tab>
<uib-tab heading="Test4">
  <div id="grid1" ui-grid="gridOptions" ui-grid-grouping class="grid"></div>
</uib-tab>
</uib-tabset>

вот plunker для примера, который я пытаюсь

angularjsangular-ui-bootstrapangular-ui-gridangular-nvd3

Ответы

Ответ 1 · рейтинг 1 · Mohamed NAOUALI

ng-hide не удалит компонент вкладки, что приведет к отслеживанию его состояния. Я исправил это, используя ng-if вместо ng-id. вот plunker с решением

  <uib-tabset>
<uib-tab heading="Test1" ng-if=hideCharts index="1">
  <nvd3 options="options" data="data"></nvd3>
</uib-tab>
<uib-tab heading="Test2" ng-if=hideCharts index="2">
  <nvd3 options="options" data="data1"></nvd3>
</uib-tab>
<uib-tab heading="Test3" ng-if=hideCharts index="3">
  <nvd3 options="options" data="data2"></nvd3>
</uib-tab>
<uib-tab heading="Test4">
  <div id="grid1" ui-grid="gridOptions" ui-grid-grouping class="grid"></div>
</uib-tab>
</uib-tabset>

Перевод вопроса и ответов сообщества Stack Overflow, лицензия CC BY-SA. Оригинал на Stack Overflow.

Похожие материалы