检查树 - 传递参数以不检查子项

时间:2012-09-20 08:39:25

标签: angularjs

我有这段代码http://plnkr.co/edit/kiH0Ge?p=preview

<!doctype html>
<html ng-app="plunker" >
<head>
  <meta charset="utf-8">
  <title>AngularJS Plunker</title>
  <link rel="stylesheet" href="style.css">
  <script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.0.1/angular.js"></script>
  <script src="app.js"></script>
</head>
<body ng-controller="MainCtrl">
  <choice-tree ng-model="myTree" children="true"></choice-tree>
  <hr />
  $scope.myTree = {{myTree | json}}
</body>
</html>

我添加了parametr checkChildren

<choice-tree ng-model="myTree" checkChildren="true"></choice-tree>

然后在check指令中我想有条件地运行函数

if(scope.checkChildren === 'true') 
   checkChildren(choice);

但它不起作用。

我知道有孤立的范围,但是如何构建树。

2 个答案:

答案 0 :(得分:0)

如果我的理解是正确的,我认为这是一个简单的错字。 经过一些修改,似乎有效:http://plnkr.co/edit/BJqsl3

您想检查bool值,例如scope.checkChildren === true不反对'true'

[编辑]似乎我没有正确理解规范

如果我删除了上面指出的if语句,并致电 checkChildren(),它有效。 这是你想要的吗? Plunk会相应更新。

答案 1 :(得分:0)

现在一切正常http://plnkr.co/edit/5lLGIQ?p=preview

我只是把孩子换成了孩子和这个(关键)

$compile('<choice-tree ng-model="choice.children" children="{{children}}"></choice-tree>')(scope);

$compile('<choice-tree ng-model="choice.children" withchildren="'+scope.withchildren+'"></choice-tree>')(scope);

http://plnkr.co/edit/5lLGIQ?p=preview