2014-01-10 117 views
0

我想從資源數據然後將其添加到隔離指令的範圍,但是當我要打印到屏幕,我來到這裏誤差爲未定義CURRENT_PAGE是腳本Angularjs從控制器範圍內獲得的數據指令範圍

/** 
    * Created by yigit on 10.01.2014. 
    */ 
    var app = angular.module('kategori', [ 
     'ngResource', 
     'apiBaseRoute' 
    ]); 

    app.factory('Data', ['$resource', 'apiBaseRoute', function($resource, config){ 
     return $resource(config.apiBasePath + 'kategori/?page=:page',{page:1},{ 
      query:{ 
       isArray: false, 
       method: 'GET' 
      } 
     }); 
    }]); 

    app.controller('KategoriListCtrl',['$scope', 'Data', function($scope, Data){ 

     $scope.allData = {data:null}; 
     Data.query({}, function(data){ 
      $scope.kategoriList = {data:data.cat.data}; 
      $scope.allData.data = data.cat; 
     }); 
    }]); 
    app.directive('paginate', function(){ 
     return{ 
      scope:{paginatorData: '=paginate'}, 
      link: function(scope){ 
       alert(scope.paginatorData.current_page); 
      } 
     } 
    }); 



<!DOCTYPE html> 
      <html ng-app="kategori"> 
      <head> 
       <meta charset="UTF-8"> 
       <title></title> 
       <link rel="stylesheet" href="css/bootstrap.min.css"> 
      </head> 
      <body> 
      <div class="col-md-6 col-md-offset-3" ng-controller="KategoriListCtrl"> 
      {{allData.current_page}} 
       <div paginate="allData"></div> 
      </div> 

      <script src="js/lib/angular.min.js"></script> 
      <script src="js/lib/angular-resource.js"></script> 
      <script src="js/kategori.js"></script> 
      <script src="js/apiroute.js"></script> 
      </body> 
      </html> 

我讀這篇文章nested scope

但沒能解決我的問題。

因此,代碼提醒未定義。我該如何解決這個問題?

+0

嘗試控制器屬性添加到您的direcrive並設定範圍爲參數,就像你在鏈接 – makallio85

+0

如何呢?即時通訊確實noob謝謝。 – yigitozmen

+0

你在哪裏設置'current_page'? – zeroflagL

回答

0

你能展示你的HTML嗎?你需要通過這樣的特性:

<div data-paginate="paginate"></div> 
+0

我在編輯....我用html編輯。 – yigitozmen