2017-12-06 12 views
0

私はテンプレートの関数からIDを取得しようとしていますが、取得できません。引数なしでは簡単に関数を呼び出すことができますが、引数を使用してこれを行う方法はわかりません。これまでのところ、これは私がしたものです。ここでディレクティブテンプレートからIDを取得して関数を渡す方法は?

指令テンプレート(ジョブサーチHTML)

<div class="artist-job-search-filters"> 
        <div class="foo" ng-click="$ctrl.changeArtistJobFilter(1)" ng-class="$ctrl.searchFilterAll ? 'artist-filter-selected' : 'artist-filter'">All</div> 
        <div class="foo" ng-click="$ctrl.changeArtistJobFilter(2)" ng-class="$ctrl.searchFilterJob ? 'artist-filter-selected' : 'artist-filter'">Job</div> 
        <div class="foo" ng-click="$ctrl.changeArtistJobFilter(3)" ng-class="$ctrl.searchFilterStandBy ? 'artist-filter-selected' : 'artist-filter'">Standby</div> 
        <div class="foo" ng-click="$ctrl.changeArtistJobFilter(4)" ng-class="$ctrl.searchFilterAudition ? 'artist-filter-selected' : 'artist-filter'">Audition</div> 
        <div class="foo" ng-click="$ctrl.changeArtistJobFilter(5)" ng-class="$ctrl.searchFilterApplied ? 'artist-filter-selected' : 'artist-filter'">Applied</div> 
       </div> 

changeArtistJobFilterは私の関数であり、私は値を渡しています。以下は私のdirective.js

Directive.jsある

app.directive('jobsSearch', function() { 

return { 
    restrict: 'EA', 
    scope: { 
     'artistSearchModel': "=", 
     'showDropdown': "=", 
     'operaticRoleSearchResult' : "=", 
     'viewAllJobs' : "&", 
     'musicalWorkSearchResult' : "=", 
     'institutionSearchResult' : "=", 
     'changeArtistJobFilter' : "&", 
     'searchFilterAll' : "=", 
     'searchFilterJob' : "=", 
     'searchFilterStandBy' : "=", 
     'searchFilterAudition' : "=", 
     'searchFilterApplied' : "=", 
     'searchArtistJob': "&" 
    }, 
    controller: function() { }, 
    controllerAs: '$ctrl', 
    bindToController: true, 
    templateUrl: '/views/profile/directives/job_search.html' 
}; 

});

ここからは、私が指示をどこから呼び出すのかが分かります。

ディレクティブ

<jobs-search artist-search-model="jobDashboard.artistSearchModel" 
      search-artist-job="jobDashboard.searchArtistJob()" 
      show-dropdown="jobDashboard.showDropdown" 
      operatic-roleSearch-result="jobDashboard.operaticRoleSearchResult" 
      view-all-jobs="jobDashboard.viewAllJobs()" 
      musical-work-search-result="jobDashboard.musicalWorkSearchResult" 
      institution-search-result="jobDashboard.institutionSearchResult" 
      change-artist-job-filter="jobDashboard.changeArtistJobFilter()" 
      search-filter-all="jobDashboard.searchFilterAll" 
      search-filter-job="jobDashboard.searchFilterJob" 
      search-filter-stand-by="jobDashboard.searchFilterStandBy" 
      search-filter-audition="jobDashboard.searchFilterAudition" 
      search-filter-applied="jobDashboard.searchFilterApplied" 
      ></jobs-search> 

答えて

0

で見るHtmlのちょうどあなたがディレクティブに

change-artist-job-filter="jobDashboard.changeArtistJobFilter(**filter**)" 
を呼び出すところから関数内で引数を置きます
関連する問題