angular.js を使用しており、変数が変更されたときに $watch を使用して関数を起動しようとしています。データが最初にロードされたときに発生しますが、その後では発生しません。ここで何が起こっているのか正確にはわかりませんか?
コードを以下に貼り付けます。
function gradeChart($scope, $http) {
   $http.get('studentData.json').success(function(data) {
       $scope.students = data;
   });
    $scope.$watch('students',function(change){
       console.log('this fires on load but not after');
    });
}