Cipher Bliss

Mot-clé - angular

Fil des billets - Fil des commentaires

mardi 8 décembre 2015

twig et angular

twig utilise des marquerus en double accolade, angular aussi dans ses templates. SI on veut éviter de se marcher sur les pieds et de voir ses instructions de template angular mangées par celles de twig (car évaluées avant que le js n'y ait accès), il existe deux méthodes courantes: entourer les instructions angular de balise twig "verbatim" afin qu'elles ne soient pas interprêtées, ce qui rallonge considérablement le code des templates en plus d'être assez laid. 

{% verbatim %}
    {{ monExpressionAngular }}
{% verbatim %}

ou bien on peut changer les marqueurs d'expressions angular dans la config de notre app. Par example, utiliser des double parenthèses. mon clavier azerty préfère, car cela évite de faire deux boutons pour un caractère. Pour cela, dans l'instanciation de votre app angular, dans la config, mettez le service $interpolateProvider et définissez lui ses symboles de début et de fin comme ceci:

(function () {

    window.tykaynApp = angular.module('tykaynApp', [])
        .config(['$interpolateProvider', function ($interpolateProvider) {
            $interpolateProvider.startSymbol('((');
            $interpolateProvider.endSymbol('))');
        }])
    ;

})();

Ainsi vous aurez la possibilité de faire vos expressions angular dans twig avec des double parenthèses. (Sans oublier de définir ng-app et ng-controller dans votre template)

    (( monExpressionAngular ))

jeudi 14 mai 2015

générateur angular jeej

trop biennn, j'ai profité de ce jour férié pour publier mon premier package NPM, un générateur yeoman utilisant mes outils favoris. Le tout avec du readme.md, des infos et un dépot sur github (génétareur-tk). https://www.npmjs.com/package/generator-angular-jeej Voilà ce que cela comprend:

Gulp, Angular, coffeescript, jquery, bootstrap, font awesome, commitement to open source. browser sync, karma, jasmine, jslint, uglify, coverall and more.

comment utiliser le générateur angular jeej

il vous faut avoir installé yeoman de chez NPM. dans un terminal, exécutez cette commande:


$ npm i -g yo

pour lancer le générateur, placez vous dans le dossier où vous voulez avoir votre webapp, et utilisez yo.

$ yo angular-jeej

Il vous sera demandé quelques infos a inclure dans votre webapp.

Chaque fois que vous modifierez un fichier source (dans le dossier src), que ce soit un fichier .scss, .coffee, .js, ou html, ils seront recompilés dans le dossier dist, et réinjectés dans le navigateur grâce à browser sync.

$ gulp

après install, vous pouvez voir que tout a merveilleusement fonctionné, lancez gulp. rendez vous sur http://localhost:3000 et voyez le mirâaaaacle s'accomplir. dans votre console de commande vous pourrez voir aussi que j'ai déjà mis en place quelques tests chargés de vérifier qu'angular fonctionne bien avec le module et son controlleur basiques.

notez que j'ai inclus des dépendances qui ne donnent encore aucune action au niveau de gulp mais que je compte bien mettre en place, par exemple coverall. Je n'ai pas encore clairement défini si je vire la partie js dans le dossier src pour laisser la place aux fichiers coffee. je vais sans doute proposer une option lors de l'exécution du générateur. Enfin c'était un chouette défi!

Vous aussi pouvez créer votre générateur yeoman perso.

Pourquoi jeej comme nom de générateur? Parce que j'ai trop regardé de youtube poop, et que mon générateur contient du SASS. Si ça ne vous dit rien, considérez que vous avez un esprit sein dans un corset. Allez donc le tester et n'hésitez pas à me donner des conseils sur comment l'améliorer.