AngularJs Directives Loaded Event

12,719

Solution 1

For the benefit of searchers...

@jack.the.ripper 's comment was correct. The SignalR stuff did need moving out to a service.

In the case of notifying when all directives were loaded, this has been working nicely.

Solution 2

You can use $timeout to execute a function after all the directives have been compiled, linked, and rendered.

$timeout(function() { 
    // do something here
});
Share:
12,719
JsAndDotNet
Author by

JsAndDotNet

C#, .NET, JavaScript, Azure, Angular, MVC & WPF (rarely these days!).

Updated on June 17, 2022

Comments

  • JsAndDotNet
    JsAndDotNet about 2 years

    I have just started using AngularJs directives, using the resources here, here and here.

    I have a situation where i need to do something after all directives have been loaded.

    i.e

    Scenario 1

    • Controller Loads
    • Directive 1 loads
    • Directive 2 loads
    • Final event fires (preferably picked up by the controller)

    Scenario 2

    • Controller loads
    • Directive 1 loads
    • Directive 2 loads
    • Directive 3 loads
    • Final event fires (preferably picked up by the controller)

    I can't seem to find a 'directives loaded' event. With a search, the best I could find was this SO post, (for which this answer does work), but it feels like a 'broad brush' approach.

    What is the correct way of doing this please?

    Happy to post code if needed, but it doesn't seem beneficial in this instance.