Ich war neugierig auf das, was $scope.$eval
Sie so oft in Direktiven sehen, also habe ich die Quelle überprüft und Folgendes gefunden in rootScope.js
:
$eval: function(expr, locals) {
return $parse(expr)(this, locals);
},
$parse
scheint durch ParseProvider
in definiert zu sein parse.js
, was eine eigene Minisyntax zu definieren scheint (die Datei ist 900 Zeilen lang).
Meine Fragen sind:
Was genau
$eval
macht das? Warum braucht es eine eigene Mini-Parsing-Sprache?Warum wird kein einfaches altes JavaScript
eval
verwendet?
$parse
ist wahnsinnig toll.