多应用+插件架构,代码干净,二开方便,首家独创一键云编译技术,文档视频完善,免费商用码云13.8K 广告
### 13.4. 表达式函数化 _$parse_ 这个服务,为 js 提供了类似于 Python 中 _@property_ 的能力: var TestCtrl = function($scope, $parse){ $scope.get_name = $parse('name'); $scope.show = function(){console.log($scope.get_name($scope))} $scope.set = function(){$scope.name = '123'} } _$parse_ 返回一个函数,调用这个函数时,可以传两个参数,第一个作用域,第二个是变量集,后者常用于覆盖前者的变量: var get_name = $parse('name'); var r = get_name({name: 'xx'}, {name: 'abc'}); console.log(r); _$parse_ 返回的函数,也提供了相应的 assign 功能,可以为表达式赋值(如果可以的话): var get_name = $parse('name'); var set_name = get_name.assign; var r = get_name({name: 'xx'}, {name: 'abc'}); console.log(r); var s = {} set_name(s, '123'); var r = get_name(s); console.log(r);