2016-09-29 35 views
0

http://plnkr.co/edit/JAIyolmqPqO9KsynSiZp?p=preview無法使用指令

我們如何添加的addChild(樹)函數的代碼,更多的數據添加到陣列時添加功能。我已經改變了模板,這樣

'<p>{{ family.name }}{{test }}</p>'+ 
'<ul>' + 
    '<li ng-repeat="child in family.children">' + 
     '<tree family="child"></tree>' + 
    '</li>' + 
'</ul>' + 
'<button ng-click="addChild()" value="Add">Add</button>' 

,它是每一個<ul>後添加按鈕,但點擊該按鈕時,功能不獲取調用。 我在控制器中有此功能

$scope.addChild = function(){ 
    alert(); 
} 

我可以帶什麼變化?

+0

看到這個plunker更新您的plnkr,它並沒有你說的是 – taguenizy

回答

1

我對你的運動員做了一些改變。

基本上,少了什麼是你<tree>標籤,叫做addchild方法的聲明的聲明,指(index.html中)父類的方法:

<tree family="treeFamily" addchild="addChild(family)"></tree>

而且,你的指令,需要引用此方法還有:

<button ng-click="addchild({ family : family })" value="Add">Add</button>

,並添加你的指令的範圍:addchild: '&'

然後,它應該是指你的父母的addChild方法,定義如下:

$scope.addChild = function (family) { 
     if (family) 
     family.children.push({ name: "Child", children: []}); 
    }; 

參考

+0

變化這是我正在尋找的,謝謝。 – shaheer

+0

我可以通過$索引$ scope.addChild()函數 – shaheer

+0

我會認爲如此使用{family:family,index:$ index},並在' simdrouin