解析AngularJS表达式

来源:互联网 发布:linux rpm 安装 编辑:程序博客网 时间:2024/05/21 08:04

解析AngularJS表达式

  • AngularJS会在运行$digest循环过程中自动解析表达式
  • 通过$parse这个内部服务来进行表达式的运算,此服务能访问当前所处的作用域
  • 利用$watch来解析
<!DOCTYPE html><html><head>    <title>手动解析表达式</title>    <meta charset=utf-8>    <meta name=description content="">    <meta name=viewport content="width=device-width, initial-scale=1">    <script src="angular-1.2.20/angular.js"></script></head><body ng-app="myApp">    <div ng-controller="MyController">        <input type="text" name="input" ng-model="expr" placeholder="Enter an expression">        <h2>{{parseValue}}</h2>    </div>    <script type="text/javascript">        var app=angular.module("myApp",[]);        app.controller("MyController",function($scope,$parse){            $scope.$watch("expr",function(oldVal,newVal,scope){                if(oldVal!==newVal){                    var parseFun=$parse("expr");                    $scope.parseValue=parseFun(scope);                }            })        });    </script></body></html>
0 0
原创粉丝点击