如何使用angularjs在单个ng-init中直接调用多个函数

问题描述:

我只是尝试在angularjs的单个ng-init中调用两个函数,但它通过对我的错误。 我的代码:如何使用angularjs在单个ng-init中直接调用多个函数

ng-init="function1();function2();" 

我不知道如何调用这些函数correctly.anyone可以给我一些想法去做。
Thanls advance ..

看看下面的链接,看看控制台。

http://plnkr.co/edit/60Ry6hwiunAF12PZclNW?p=preview

HTML

<div ng-init='one(); two();'></div> 

JS

$scope.one = function(){ 
    console.log('one') 
}; 

$scope.two = function(){ 
    console.log('two') 
}; 

希望这是你期待什么

您可以创建一个像 “初始化” 一个主要功能和呼叫等功能在那个函数里面。

ng-init="init()" 

从控制器

function init() { 
    function1(); 
    function2(); 
} 

首先,这应该工作,也可能是原因,它不就是因为你没有在这些范围功能。这个或祖先元素上是否有ng-controller

如果你这样做,确保这些功能在范围定义:

.controller("MainCtrl", function($scope){ 
    $scope.function1 = function(){...}; 
    $scope.function2 = function(){...}; 
}); 

其次,你不应该使用ng-init在所有调用函数。

<div ng-controller="MainCtrl"> 
</div> 

相反,在控制器调用这些函数:

.controller("MainCtrl", function($scope){ 
    function1(); 
    function2(); 

    function function1(){...}; 
    function function2(){...}; 
}); 

Angular documentation on ngInit

唯一适当使用ngInit的是混叠ngRepeat的特殊性能,如在可见演示如下。除了这种情况,您应该使用控制器而不是ngInit来初始化作用域上的值。