2017-08-01 10 views
0

私はfrontapp.jsとdepartmentapp.jsのような2つのapp.jsを持っています SchoolController.jsの下にあるschool.htmlはfrontapp.jsに属しています。私はすべての学校と部門を取得しています。私は、ページがDepartmentHomeController.js下にあるdepartmenthomepageにリダイレクトされdepartmentNameをクリックしていますschoolIdは、 をdepartmentapp.js属するいずれかdepartmentNameanglejsのコントローラ間でIDを取得する

SchoolController.js

をクリックしたときに私がDepartmentIdのを得ることができますどのように私を提案することができます
$scope.getallschools = function() { 
    SchoolService.getallschools().then(function(response) { 
    $scope.allschools = response.data; 
    }); 
} 

allschoo LS自体が、私は

<div class="col-xs-12 col-sm-6 col-md-6" data-ng-repeat="school in allschools"> 
    <div class="row"> 
    <div class="col-xs-12 col-sm-12 col-md-12"> 
     <h5>{{school.schoolName}}</h5> 
     <ul data-ng-repeat="department in school.departments"> 
     <li><a href="./department"> {{department.departName}}</a></li> 
     </ul> 
    </div> 
    </div> 
</div> 

DepartmentHomeController.jsここで私はハード私はdepartmentNameをクリックすることで、動的にDepartmentIdのを得ることができる方法DepartmentIdのコード化された

$scope.departmentId = 20 
DepartmentHomeService.getThemeForDepartment($scope.departmentId) 
    .then(function(response) { 
    console.log("received theme"); 
    if(response.data != undefined) {    
    $scope.cssFile = response.data; 
    console.log($scope.cssFile); 
    $('head').append('<link rel="stylesheet" type="text/css" media="screen" 
     href='+$scope.csspath + $scope.cssFile +'>'); 
    } else { 
    $('head').append('<link rel="stylesheet" type="text/css" media="screen" 
     href='+$scope.csspath + $scope.cssFile +'>'); 
    } 
}); 

schools.html

schoolId

で部署を取得しています。

+0

が起こるのか理解する上であなたに大いに役立つでしょう二つのコントローラ間の通信をどのように見ることができます://github.com/angular-ui/ui-router)を使って、idやその他のデータが渡されたページをナビゲートします。コントローラ間でIDを渡すだけの場合は、サービスまたはブラウザのlocalStorage – blewherself

答えて

1

これにはさまざまな方法があります。状態とコントローラを管理するためにuiルータを使用している場合は、ui-sref = "stateName /:id"を渡すことができます。あなたのhref内の他の

は単に

<a href="/department/5"> 

それは動作します好きにURLを変更してみてください。エルス

あなたはそれはあなたが[UI-ルータ](HTTPSのような別のhtmlページ、使用ルーターを持っている場合は通信が

What's the correct way to communicate between controllers in AngularJS?

+1

を使用して、ui-routerを使用しているときに手動でURLを操作することはお勧めしません。 –

+1

Yeah Syed Faizan! –

+0

私は2つのapp.jsファイルを使用しています。学校ページはfrontapp.js.Andにあり、学校からはすべての部門を表示しています。部門をクリックするとdepartmentapp.jsのDepartmentホームページに送られます。だから、私は部門をクリックするとIDを取得する必要があります。IDを取得すると、その特定の部門に基づいてすべてを表示できます。問題は現在、frontappとdepartmentapp.jsという2つのapp.jsファイルが含まれているためです私はそのdepartmentId.In school.htmlを得ることができません。私は

関連する問題