2016-07-21 13 views
0

私はいくつかのhttpリクエストを角度で作成する作業をしました。私は角度が非常に新しい、私はどのようにそのアプリケーションを行う必要がありますホットな特定のルールです。あなたが私が何を記述するかどうかをこれを行うことが可能かどうか、そして可能であればどうすればよいか教えてください。コントローラーの機能の中でもっと角度機能

私は、コントローラ内の関数を呼び出すいくつかのボタンや通常のリンクが必要です。ですから、複数の機能を持つコントローラーが1つ必要です。呼び出しが行われたときにのみ使用できるように、各機能のデータが必要です。私はコントローラで機能しました:

(function() { 
'use strict'; 

angular 
    .module('userManager') 
    .controller('userDataController', userDataController); 


function userDataController(auth, $scope,$http){ 

    var vm = this; 
    vm.loggedUser = auth; 
    vm.allUsers=[]; 

    function allUsersGet() { 
     $http({ 
      method: 'GET', 
      url: 'http://localhost:3000/users/allUsers', 
      headers: { 
       'Content-Type': 'application/json' 
      } 
     }).then(function (response) { 
      vm.allUsers = response.data; 
     }); 
    } 

} 
})(); 

私はこのデータを見ることができません。誰も私のリンクをビューとデータの印刷で書く方法を教えてもらえますか?少しコントローラの変更機能が必要ですか?事前に

おかげで、あなたのビューで$scope

}).then(function (response) { 
    vm.allUsers = response.data; 
    $scope.allUsers = response.data; 
}); 

にデータを設定するために、データの検索に

+0

必要性から、私は$スコープを避けることができます$スコープ – aw04

+0

にビューから呼び出される関数(複数可)をバインドするには?私が縛る方法ができないのならば? – Sasa

+0

あなたのビューコードを表示することができますか、どのようにあなたのスコープを避けたいでしょう – urvashi

答えて

0

次のような任意のテンプレートにコントローラを使用することができます。

<div ng-controller="userDataController as $ctrl"> 
    <button ng-click="$ctrl.allUsersGet()">get users data</button> 
    <pre> 
    {{ $ctrl.allUsers }} 
    </pre> 
</div> 

ます。また、コントローラにallUsersGet機能をバインドするmigtht。代わりに

function allUsersGet() { ... 

書き込み

this.allUsersGet = function() { ... 
+0

$ ctrlは特別なものではありません。これは角度成分から取られた慣例に過ぎません。代わりに他の名前を使用することもできます。 –

+0

ありがとう、あなたは私を非常に速く助けました。私は今私がしたいデータを取るためにいくつかの応答を得た。この質問は終了することができます。 – Sasa

+0

こんにちは@Sasa。私は助けることができてうれしいです。あなたがあなたの答えを見つけたように感じたら、それを受け入れてください。評判が上がると、質問をアップアップすることもできます。質問を閉じることは、質問が問題のある/悪い場合にのみ行われます。ここではそうではありません。 –

0

変更することができますループのデータを次のように:

<div ng-repeat="user in allUsers"> 
    {{user}} 
</div> 
1
<div ng-controller="userDataController as userData" > 
<div ng-repeat="user in userData.allUsers"> 
    {{user}} 
</div> 
</div> 

'this'を使用してデータをバインドする場合、上記の方法を使用できます。

関連する問題