我正在尝试编写自定义指令。这是来自Andy Joslin的示例的分支。

请查看代码http://plnkr.co/edit/jXfr6P?p=preview

我可以将selection方法传递给第一个子范围,但不能进一步传递。我知道ng-repeat创建子作用域,并且原始示例正确更新了模型。但是,不确定如何调用该函数。

Click on Apparel -> sel = Apparel ==> works
Click on Mens Shirts  -> sel = Apparel ==> Not OK (needs to be Mens Shirts )
Click on Mens Special Shirts -> sel = Apparel ==> works Not OK (needs to be Mens Special Shirts)
...
Click on Boats -> sel = Boats ==> works

最佳答案

我已设法解决您的问题。找到解决方案的关键是将指令范围更改为:

 scope: {
      tree: '=ngModel',
      selection:'=selection' // changed & to =
    }


因为您必须为每棵树传递选择功能并通过以下方式进行选择:

selection="selection" // was selection="selection(val)"


见我的叉形拨叉器:http://plnkr.co/edit/2tal6V?p=preview

关于javascript - Angular JS:指令内的作用域和ng-repeat,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/13659452/

10-13 00:23