EventEmitter.required

EventEmitter Collection/FSM
Aus der Kategorie: Resources

frdl.EventEmitter.required

EventEmitter is shimed and uses the event-state module as EventEmitter.prototype.required




Examples:

As for instance this is used as require.state EventEmitter (-Collection).

Emitted in the core source when a module loaded by require:

        require.state.emit('resolved', {
            identifier : module.identifier,
            module : module
        });

        require.state.emit('resolved '+module.identifier, {
            identifier : module.identifier,
            module : module
        });

Example usage:

    require.state.on('resolved', function(){
             // console.dir(arguments);   
           // arguments[0].module was resolved and is ready to use !
          console.log('Resolved: '+arguments[0].identifier);
    });
       
    require.state.on('resolved 5:http://'+frdl.route('HOST_API')+'/api-d/4/js-api/library.js?plugin=flow', function(){

        // the plugin was loaded and for instance frdl.UI is ready to be used !

         console.dir(arguments[0].module);   
    });

EventEmitter Collection

var MyApp = {

       onMyAppComponentReady : function(components){

            console.log('The App is ready and runs a start up function...');

            this.Aspect.components = components;

            console.dir(this.Aspect);

       },

      Aspect : {/*  anything awesome */}

};

var MyAppComponent = new EventEmitter();

     MyAppComponent.required = ('undefined' !== typeof MyAppComponent.required.module)
                                   ? MyAppComponent.required.module
                                   : MyAppComponent.required;

     MyAppComponent.ready = MyAppComponent.required(['resolved node-vendor/mymodule',  'resolved webfan/my-webfan',  'resolved 1:libraries/angular/angular'], function (dataArray) {
              //this function will be executed when all of the
              //  required events are triggered, for instance all dependencies are loaded.
              console.log('All required modules are loaded and the component is ready to be used/can trigger a start');
              this.onMyAppComponentReady(dataArray);
     }, MyApp);

 

    MyAppComponent.once('resolved 1:libraries/angular/angular', function(){
         console.log('AngularJS is ready);   
    });






Erstellt von WEBFAN (Monday 1st of August 2016 03:51:44 AM - vor 238,61 Tagen)
in der Kategorie Resources als statische Seite
Veröffentlich/Freigeschaltet: Monday 1st of August 2016 07:28:47 AM von WEBFAN
Zuletzt geändert: Saturday 15th of October 2016 01:35:18 AM von WEBFAN
Der Beitrag wurde insgesamt 536 mal gelesen (durchschnittlich 2,24 mal am Tag)

Bewertung des Beitrages: - Noch keine Bewertung - von 10 Punkten (bei 0 Stimmen)

Für Benachrichtigung über neue Beiträge aus der Kategorie Resources:
Jetzt kostenlos als Benutzer von "frdl" registrieren...!

Kommentar zu diesem Beitrag verfassen:

Dein Name (* Pflichtfeld):


Deine Website:
(mit http://)


Deine E-Mail Adresse:
(Nicht öffentlich, wird intern bei Webfan gespeichert, aber niemandem angezeigt.)


Track Back Url:
(mit http:// - Auf dieser Url hast Du auf den vorliegenden Artikel verlinkt)


Bewertung des Artikels abgeben:
(10=besonders gut | 0=besonders schlecht)


Dein Kommentar zu diesem Beitrag (* Pflichtfeld):

Html erlaubt: a> <b> <blockquote> <br> <center> <div> <font> <h1> <h2> <h3> <h4> <h5> <h6> <hr> <i> <img> <ul> <li> <p> <pre> <small> <sub> <sup> <table> <td> <tr> <u> <strong> <span> <nodocu> <docu> <wemc> <dl> <dt> <dd> <abbr> <em> <tbody


Bitte mit TAN C1 bestätigen:



Bewertung des Beitrages: - Noch keine Bewertung - von 10 Punkten (bei 0 Stimmen)

Kommentare zu diesem Beitrag:


- keine Kommentare zu diesem Beitrag vorhanden -