如何在推送后刷新列表? AngularJS / DB

时间:2018-03-16 09:46:06

标签: angularjs angularjs-ng-repeat refresh

嗨先生, 我知道如何在使用AngularJS添加,编辑或删除操作后刷新我的列表。

我发布我的控制器和我的HTML代码,它工作但我必须刷新所有页面以查看数据库中的更改。所有要求都是Ty。

控制器:

angular.module('myApp').controller('controllerFilm', function(service , $scope ) {

var vm = this;

vm.allFilm = function() {
    service.allFilm().then(
    function(data){//success
        vm.allFilm = data; // accounts list
    },function(err){//error
          console.log("errore di chiamata allFilm");
    });
} 

HTML:

<div ng-controller="controllerFilm as cf">
<button class="button" ng-click="cf.allFilm()">FILM MANAGER</button>
 <br>
 <br>
    <div class="scroll"> 
     <table class="blueTable">  
        <thead>
            <tr>
                <th>ID</th>
                <th>TITLE</th>
                <th>RELASE YEAR</th>
                <th>LENGTH</th>
                <th>EDIT</th>
                <th>DELETE</th>     
            </tr>
        </thead>
        <tbody>
           <tr ng-repeat =
                "film in cf.allFilm  | orderBy : '-filmId' | limitTo : 10">
                    <th>{{film.filmId}}</th>
                    <th>{{film.title}}</th>
                    <th>{{film.relaseYear}}</th>
                    <th>{{film.length}}</th>
                    <th align="center"> <button  
                         ng-click="cf.editFilm(film)">EDIT</button></th>
                    <th align="center"> <button  
                         ng-click="cf.deleteFilm(film)">DELETE</button></th>
          </tr>
      </tbody>
</table>

PS:我没有发布我的功能编辑和删除..

1 个答案:

答案 0 :(得分:0)

虽然应该自动应用更改,因为AngularJs有双向绑定,但有时会导致此问题。将数据设置到列表后尝试调用scope范围方法。

$scope.$apply();

P.S:这是一种强制执行摘要周期以立即反映变化的方法。