Javascript 在页面之间切换后,$scope.myArray未显示

Javascript 在页面之间切换后,$scope.myArray未显示,javascript,angularjs,Javascript,Angularjs,我有一个用AngularJS编写的两页web应用程序,每次显示页面时都应该从数据库中获取新数据 在我新加载页面后,它工作得非常好。数据正确地显示在A页上。当我切换到B页(最初不可见)时,它也可以工作。但当我切换回A页时,并没有显示任何数据。我调试了数组,每次都应该清空并重新填充,我发现旧数据仍然存在,新数据(与旧数据相同)被添加到此数组中 以下是我的代码的简化版本: 视图: <table> <tr ng-repeat="data in mydata">

我有一个用AngularJS编写的两页web应用程序,每次显示页面时都应该从数据库中获取新数据

在我新加载页面后,它工作得非常好。数据正确地显示在A页上。当我切换到B页(最初不可见)时,它也可以工作。但当我切换回A页时,并没有显示任何数据。我调试了数组,每次都应该清空并重新填充,我发现旧数据仍然存在,新数据(与旧数据相同)被添加到此数组中

以下是我的代码的简化版本:

视图:

<table>
   <tr ng-repeat="data in mydata">
      <td>
         <a href="{{data.link}}">{{data.linkname}}</a>
      </td>
   </tr>
</table>
angular.module('myApp').controller('MainCtrl', ['$scope', function($scope) {
    $scope.mydata = [];
    //send request for data to the database...
    //listener for the incoming data is the following function:
    var listener = function(message){
        $scope.mydata.push(message); //message has the expected format
        $scope.$apply();             //just for sure
    };
}]);

当您离开时,您是在进行完全刷新(301)还是只是更改路线?当我在页面之间切换时,我使用
$routeProvider
进行路线更改。您可以发布完整的代码吗?从数据库请求数据是一个被遗漏的重要部分,尽管我也不知道如何调用侦听器函数