所有
我是AngularJS指令范围的新手。我想知道是否有人可以谈论$scope.editdata
如何处理其中html中指定的变量的过程。
例如:
ng-repeat
我想知道的是:
[1]。我想知道在ng-repeat
内如何更改d和edited_odd_times而不将它们作为参数,或者如何访问ng-repeat生成的范围?
[2]。为什么scope:true
可以影响其中HTML的变量,而指令(比方说我想定义一个指令工作,如public function books() {
return $this->hasMany('App\Book');
}
但只是不重复)public function user() {
return $this->belongsTo('App\User');
}
和转换不能影响HTML中的变量?
由于
答案 0 :(得分:0)
[1] 您应该认为无法从其父作用域访问子作用域中生成的值。 换句话说,控制器范围不应该访问指令中生成的范围值。
[2] 你可以使用ngTransclude。请再次查看官方文档。
在Html中。
<div ng-app="testapp" ng-controller="testctrl">
<div ng-repeat="d in data">
{{d}}
</div>
</div>
在控制器代码中。
angular.module('testapp', [])
.controller('testctrl', function($scope){
$scope.data = [1,2,3];
angular.forEach($scope.data, function(item, i){
if (i%2==0){
$scope.data[i] = item + '(edited)';
}
});
})
我希望这可以帮到你。 :)