我正在尝试编写自定义指令。这是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
答案 0 :(得分:3)
我已经成功修复了你的例子。找到解决方案的关键是将指令范围更改为:
scope: {
tree: '=ngModel',
selection:'=selection' // changed & to =
}
因为您必须为每个树传递选择函数并以这种方式选择:
selection="selection" // was selection="selection(val)"
请参阅我的分叉的plunker:http://plnkr.co/edit/2tal6V?p=preview