• [^] # Re: Démo ? Pas encore ...

    Posté par . En réponse à la dépêche Archetype Javascript Framework 0.1. Évalué à 1.

    Oui, le checkstyle nous engueule un peu là dessus, tu as raisons sur les accolades :)

    Le require représente beaucoup de boulot, car il gère beaucoup de cas différents (synchrone, asynchrone, html, css, js, component) on s'est inspiré un peu de celui de Dojo mais on l'a évidemment fait à notre sauce: le principe est decoder ce qu'on souhaite(html, css, js, etc.) et d'insérer les balises dans le head via les methodes DOM, puis on attend la levé des évènements "load" sur les différentes balises rajoutées

    Une gestion particulière est faite dans le require pour les composants puisqu'ils ont des dépendances transitives demandant un chargement partiel (puisque defini dans la definition du composant) pour obtenir l'information de ce qui leur est necessaire. Aussi il ne faut appeler le callback qu'à la fin de tous les chargements de dépendance.
    Pour celà nous utilisons des "LoadJoiner" permettant de savoir quand le chargement d'une liste de fichier est terminée et que l'on peut appeler un callback correspondant.

    Pour le HTML on ne rajoute pas de balise script, on doit donc se limiter à la XmlHttpRequest et on stocke le résultat dans du JS

    Pour le CSS on a pas d'évènement load de levé, on le considère donc chargé du moment qu'on le demande (ce qui est relativement vrai).

    On gère une file de requête à faire pour donner les priorités aux composants(on a eut quelques problème avec, je ne sais pas si c'est comme ça pour la 0.1, c'est plus le domaine de Swiip, en tout cas ça le sera au minimum pour les release suivantes), puisqu'eux même peuvent avoir des dépendances transitive qu'il nous faut connaitre au plus tôt pour avoir toujours une file la plus remplies possible et charger le tout au plus vite.