2017-05-15 9 views
2

配列をdirectiveに渡して、それを指示メソッドに渡しています。私はindexの価値を得ようとしています。しかし、undefiendとして取得しています。ここの問題は何ですか?angularJS - 配列値の `index`を得ることができない

配列の作成:依存(

[]0: Object 1: Object 2: Object 3: Object 4: Object 5: Object 6: Object 7: Object 8: Object 9: Objectlength: 10__proto__: Array(0) 
dataGridDirective.js:24 undefined 
+0

scope.pagesを表示できますか? 'array'値を投稿するには – Jenny

+0

が必要ですか? – user2024080

答えて

1

それは未解決の約束または範囲を変更することがあります。ここに

var dataGridMaker = function() { 

    return { 
     scope: { 
      "pages" : "=" 
     }, 
     replace: true, 
     template : GridTemplate.join(''), 
     link: function( scope, element, attrs) { 
      console.log(scope.pages); //getting all array values 
      console.log(scope.pages[0]); //undefined-why? 
     } 
    } 

} 

がコンソールである:ここ

var dataSize = gridView.baseData.length/viewPorts; 
     for(var i = 0; i < dataSize; i++){ 
      gridView.pages[i] = { 
       show : i ==0 ? true:false, 
       pageData : gridView.baseData.splice(0, viewPorts) 
      }; 
     } 
     return gridView.pages; 

は私のディレクティブですあなたがコントローラーでやっていることについて)。遅延のないタイムアウトでconsole.log(scope.pages[0]);をラップし、何が起こるかを見てください。このようなもの:

$timeout(function() { 
    console.log(scope.pages[0]); 
}); 
+0

非常にありがとう。正確にそれは正常に動作します – user2024080

関連する問題