You can make a reference to the window object in the scope 
$scope.window = window;

and then 
ng-click="window.globalFunc()"



On Tuesday, 14 May 2013 08:48:11 UTC-3, Gavin Foley wrote:
>
> Thank you zdam but I was already aware of that.
> What I'm looking for is to be able to pass a global function reference as 
> parameter to an ngClick function. 
> This way I dont have to know anything concrete about the function. Much 
> like Raymonds jsfiddle; I could be passing a reference to a console.log 
> func, or an alert func.
>  
> From what I can tell, there doesn't seem to be any straightforward way to 
> do this.
>
>
> On Tuesday, 14 May 2013 15:54:16 UTC+12, zdam wrote:
>>
>> You can just call the global func directly. http://jsfiddle.net/nA6jB/2/
>>
>> On Tuesday, 14 May 2013 11:47:49 UTC+10, Gavin Foley wrote:
>>>
>>> Could someone please explain to me how to pass a reference to a regular, 
>>> global javascript function (lives outside Angular) as a parameter of a 
>>> scope function in ngClick.
>>>
>>> *JSFiddle*: http://jsfiddle.net/gavinfoley/nA6jB/
>>>
>>> This isn't for any application, it's more a proof of concept but it has 
>>> me stumped.
>>>
>>> As you can see from the JSFiddle, if I pass the global function as a 
>>> string and use eval, it works fine. 
>>> I'm not really happy with this solution and was wondering if some 
>>> learned soul on here could propose a solution.
>>>
>>> Supposing I had the following in my controller:
>>>
>>>
>>>
>>>
>>>
>>>
>>> *$scope.alertFunc = function(someGlobalFuncReference) {   $scope.myMsg = 
>>> 'Hi there';   // Calls global function   // Something like this:   
>>>  someGlobalFuncReference($scope.myMsg); }*
>>>
>>> And this as regular js function somewhere:
>>>
>>> *function greet(msg) { alert(msg); }*
>>>
>>> How would I call that from an ngClick? 
>>>
>>> Or in other words, what I really want to know is, how can I make this 
>>> work: 
>>>
>>> *ng-click="alertFunc(greet)"*
>>>
>>>
>>>

-- 
You received this message because you are subscribed to the Google Groups 
"AngularJS" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
Visit this group at http://groups.google.com/group/angular.
For more options, visit https://groups.google.com/d/optout.

Reply via email to