I think what I require here is compiling link function of directive again
when user clicks on the node
On Monday, November 3, 2014 2:25:12 PM UTC-8, Kapil Deshpande wrote:
>
> I am using custom directive to refresh my page. I have coded my UI
> with D3. Its a simple graph comprised of nodes and links Here is what I am
> trying to do.
>
> When I click on particular node of graph it expands into its sub graph and
> so on. For this following is the controller
>
>
> *vrmUI.controller('CompleteViewController', function($scope,$location,
> $rootScope, $route) {
> // Assigning data
> // onDeviceClick is called when node of graph is clicked.
>
>
> $scope.onDeviceClick = function(item){
> $rootScope.pageContextObject = $route.current.data;
> $scope.clickedItem=item;
> $scope.completeObject =//JSON Data
> $scope.loadExpandedView=true;
> $scope.showExpandedView=true;
> };*
> });
>
>
> Corresponding html is
>
> <div class="content-panel clearfix">
>
> <div id="topoheader" style="font:12px sans-serif"></div>
> // expandedView directive should get called when ever control goes
> inside onDeviceClick.
>
> <expanded-view ng-show="showExpandedView"
> ng-if="loadExpandedView" clicked-rack="clickedItem"
> network-data="completeObject"
> device-click="onDeviceClick(item)"></expanded-views>
> </div></div>
>
> device-click is called on click on nodes of the graph.
> And directive is
> vrmUI.directive('expandedView',function(){
> function link(scope,el,attr){
> // Processing when clicked
> }
> return{
> restrict : 'E',
> link: link,
> scope : {
> clickedItem : '=',
> onDeviceClick : '&deviceClick'
> }
> };});
>
> Question:
>
> When I click once it works perfectly but when I click on other nodes of
> graph I can see control going inside $scope.onDeviceClick = function(item){
> but my directive not getting called as happened in first case. Is there
> anyway by which I can make this happen? Please let me know if you need more
> details or question is unclear.
>
> Thanks
>
>
>
--
You received this message because you are subscribed to the Google Groups
"AngularJS" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To post to this group, send email to [email protected].
Visit this group at http://groups.google.com/group/angular.
For more options, visit https://groups.google.com/d/optout.