2017-09-08 4 views
0

Donc, je suis assez nouveau pour Angular Js. J'essaie d'accomplir un problème simple. J'ai juste besoin de tronquer une chaîne de texte. Je sais qu'il y a le filtre limitTo et que je pourrais simplement l'attacher à un élément, mais cela doit être dynamique.Comment pourrais-je ajouter un filtre personnalisé dans une directive?

This is my HAML FILE

This is my angular file

Voici également un lien vers la plume codepen.io/Brushel/pen/QMXPWN?editors=1010

+1

Vous devez écrire votre code dans la poste et ne pas insérer des images –

+0

@ alexander.polomodov Pour une raison quelconque, il a été le formatage HAML vraiment bizarre. Merci cependant, _Je m'en souviendrai pour les prochains posts_ – ThomasBrushel

+0

@ThomasBrushel Qu'essayez-vous d'accomplir avec le filtre personnalisé? –

Répondre

0

Voici un exemple simple en œuvre toutes les exigences, Utilisez ce modèle pour créer votre directive.

Codepen Demo

app.directive('truncate', function() { 
    function link(scope, element, attrs){ 
    console.log(scope.input) 
    console.log(scope.maxCharacters) 
    } 

    return{ 
    restrict: 'A', 
     scope: { 
     input: '=', 
     maxCharacters: '=', 
     href: '=', 
     isShowMore: '=' 
     }, 
    template: '<h1 ng-init="limit=true;length=maxCharacters">{{input | limitTo: length}}<a ng-attr-href="{{ href ? \'#\': undefined }}" ng-click="limit=!limit;length=limit?maxCharacters: \'\'">{{isShowMore?"Show More":"..."}}</a></h1>', 
    link: link 
    } 

}); 
+0

Merci! Tu es l'homme !! M'a beaucoup aidé! – ThomasBrushel

+0

@ThomasBrushel Vous êtes les bienvenus :) –