2013-03-14 39 views
2

從角docs使用「和」範圍在瓦爾角指令

&或& ATTR - 提供了一種在父範圍的上下文中執行的表達式。如果未指定attr名稱,則假定屬性名稱與本地名稱相同。給定範圍的小部件定義:{localFn:'& myAttr'},然後隔離範圍屬性localFn將指向count = count + value表達式的函數包裝。

這給我的印象是這樣的應該是可能的,但它不工作。我究竟做錯了什麼?

myApp.directive('test', function() { 
return { 
    restrict: 'E', 
    replace: true, 
    template: '<div><input type="button" ng-click="thefunc()" value="{{title}}"/></div>', 
    scope: { 
     title: '@', 
     thefunc: '&' 
    } 
};}); 

HTML:

<test thefunc="alert('Here you go.')" title="Click me for a popup"/> 

Fiddle

回答

3

角度尋找在控制器的範圍的 「警報」 -

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

,而不是window.alert

這裏是更新的版本:

http://jsfiddle.net/3CxtZ/4/

+0

謝謝。我猜我認爲它只是eval()的屬性或內容,但顯然這是錯誤的。很容易忘記這些示波器的真實性。 – mfelix 2013-03-14 20:37:26