Utilisation de $parse dans angular JS [fermé]

Des idées sur l'endroit où utiliser $parse de AngularJS .

Veuillez donner des exemples ou des liens qui décrivent clairement.

21
demandé sur Mosh Feu 2014-01-03 09:00:39

2 réponses

Angular exécute $ parse automatiquement lorsqu'il exécute la boucle $digest, $parse est essentiellement la façon dont angular évalue les expressions. Si vous souhaitez analyser manuellement une expression, vous pouvez injecter le service $parse dans un contrôleur et appeler le service pour effectuer l'analyse pour vous.

Voici un code extrait de ng-book qui regarde puis analyse une expression.

<div ng-controller="MyCtrl">
  <input ng-model="expr" type="text" placeholder="Enter an expression" />
    <h2>{{ parsedValue }}</h2>
</div>

, Puis dans notre module,

angular.module("myApp", [])
 .controller('MyCtrl',['$scope', '$parse', function($scope, $parse) {
    $scope.$watch('expr', function(newVal, oldVal, scope) {
      if (newVal !== oldVal) {
        // Let's set up our parseFun with the expression
        var parseFun = $parse(newVal);
        // Get the value of the parsed expression
         $scope.parsedValue = parseFun(scope);
      }
    });
 }]);
24
répondu Tyler McGinnis 2014-01-03 05:44:24

Vous n'utiliserez probablement pas $parse directement, mais c'est ce qui convertit les expressions angulaires en fonctions JavaScript. Les Expressions sont des extraits de code de type JavaScript qui sont généralement placés dans des liaisons telles que {{ expression }}.

9
répondu Claies 2014-01-03 05:21:49