Les Symboles AngularJs '{{' and '}}' Sont En Conflit Avec Twig

Le cadre de Javascript AngularJs et le cadre de PHP Symfony sont maintenant très populaires. Les développeurs l'utilisent pour rassembler comme Symfony + AngularJs, mais nous avons vu qu'il y a un problème avec la fonction d'impression dans les templates, spécialement dans Twigs, car AngularJs et Twig utilisent le même {{ ','}} symboles pour imprimer quoi que ce soit.Alors que faire? Comment pouvons-nous résoudre ce problème ?

Voici 2 moyens de résoudre ce problème :

1. Si vous utilisez Twigs, vous savez probablement sur Verbatim. Verbatim vous permet d’utiliser dans twigs le symbole que vous voulez, comment vous voulez l’utiliser. Alors, si nous plaçons notre fonction d’impression AngularJs dans {% verbatim%} ... {% endverbatim%} bloc, nous n’aurons aucun conflit.

2.Si vous ne voulez pas utiliser verbatim chaque fois, vous avez le choix d’utiliser une autre manière. Dans AngularJs, vous pouvez changer les symboles d'impression et définir d'autres symboles comme vous le souhaitez. Vous pouvez utiliser [[ ]], [{ }], {{{ }}}, // // etc...C’est ce qu’on appelle Interpolation. Vous pouvez créer un module angulaire pour ce changement et l'injecter où vous voulez. Voici comment procéder :

angular.module("Interpolation",[])
    .config(["$interpolateProvider",function($interpolateProvider){
        $interpolateProvider.startSymbol("[[");
        $interpolateProvider.endSymbol("]]");
    }])
Trouvez-vous cela utile?

Articles Associées