2015-08-11 4 views
0

У меня есть проект angularjs, и я использую угловые-ui (бутстрап) вкладки. моя проблема в том, что я использую инструмент построения диаграмм с ним.Определить нагрузку элемента через контроллер в Angularjs

Есть ли способ обнаружить, что вкладка полностью загружена.

<tabset justified="false"> 
    <tab heading="Yesterday" ng-controller="yesterdayCtrl" ng-cloak > 
     <div ng-include="'templates/tabViews/yesterday.html'" scope="" onload="" ></div> 
    </tab> 
    <tab heading="Weekly" ng-controller="weeklyCtrl" > 
     <div ng-include="'templates/tabViews/weekly.html'" scope="" onload="" ></div> 
    </tab> 
    <tab heading="Monthly"></tab> 
    <tab heading="Yearly"></tab> 
</tabset> 

каждый ng-include содержит подробные вкладки с большим количеством графиков внутри него. проблема заключается в том, что диаграммы не отображаются, когда ta щелкнули и просмотрели. я должен повторно вызвать всю функцию для перерисовки. Я вижу это, потому что диаграммы рисуются в фоновом режиме.

я использую c3.js с d3.js

DrawService.drawSpline = function(ele,data) { 
    c3.generate({ 
     bindto: '#'+ele, 
     data: data 
    }); 
} 
+0

Вы можете использовать атрибут OnLoad, чтобы вызвать функцию при загрузке из имеющейся сферы – Kushal

+0

OnLoad не лучший с угловым. angular.bootstrap (document, ["myApp]); то же самое, что и при загрузке с некоторой разницей. Проблема здесь не в загрузке страницы, а в обнаружении элемента lload и render. – Siddharth

+0

это вызовет функцию при загрузке табло. этот угловой.bootstrap (document, ["myApp]); вызывается, когда загружается ваш основной модуль углового – Kushal

ответ

0

временных исправлениями

<tabset justified="false"> 
<tab heading="Yesterday" ng-controller="yesterdayCtrl" ng-click="loadYes()"> 
<div ng-include="'templates/tabViews/yesterday.html'" scope="" onload="loadYes()" ng-cloak ></div> 
</tab> 
<tab heading="Weekly" ng-controller="weeklyCtrl" ng-click="loadWeek()"> 
<div ng-include="'templates/tabViews/weekly.html'" scope="" ng-cloak></div> 
</tab> 
<tab heading="Monthly" ng-controller="monthlyCtrl" ng-click="loadMonth()"> 
<div ng-include="'templates/tabViews/monthly.html'" scope="" n ng-cloak></div> 

</tab> 
<tab heading="Yearly" ng-controller="yearlyCtrl" ng-click="loadYear()"> 
    <div ng-include="'templates/tabViews/yearly.html'" scope="" ng-cloak></div> 


</tab> 

</tabset>