AngularJS コントローラーとメソッド 質問する

AngularJS コントローラーとメソッド 質問する

私はAngularJSの初心者で、コントローラーについていくつか質問があります。
これが私のコントローラーの例です:

function exampleController($scope)
{
   $scope.sampleArray = new Array();

   $scope.firstMethod = function()
   {
      //initialize the sampleArray
   };

   $scope.secondMethod = function()
   {
      this.firstMethod();
   };
};

私の質問は次のとおりです:

  • firstMethodからどのように呼び出すことができますかsecondMethod? 私が行った方法は正しいですか、それとももっと良い方法がありますか?
  • コントローラーのコンストラクターを作成するにはどうすればいいですか? sampleArray を初期化する firstMethod を呼び出す secondMethod を呼び出す必要がありますか?
  • HTML コードから特定のメソッドを呼び出すにはどうすればよいですか? ng-initialize を見つけましたが、使い方がわかりません。

ベストアンサー1

メソッドは宣言したのと同じ方法で呼び出します。

$scope.secondMethod = function() {
  $scope.firstMethod();
};

次のように HTML から呼び出すこともできます:

<span>{{secondMethod()}}</span>

しかし、コントローラには実際には「コンストラクター」はありません。通常は関数と同じように使用されます。ただし、コントローラ関数に初期化を配置すると、コンストラクターのように最初に実行されます。

function exampleController($scope) {
  $scope.firstMethod = function() {
    //initialize the sampleArray
  };

  $scope.secondMethod = function() {
    $scope.firstMethod();
  };

  $scope.firstMethod();
}

おすすめ記事