2016-02-08 47 views
0

我已经在这个角度to-do列表,但想进入到进入岗位来回米顶部而不是底部。从顶部条目添加到待办事项列表角

我的代码:

HTML

    <a href="{{url.title}}" class="link"> 
         <p class="title">{{url.name}}</p> 
         <p class="url">{{url.title}}</p> 
        </a> 
       </div> 
       <div class="col-md-4 delete m-b-2"> 
        <!--a href="javascript:" ng-click="edit($index)" type="button" class="btn btn-primary btn-sm">Edit</a--> 
        <a href="javascript:" class="btn btn-danger btn-sm" ng-click="del($index)">Delete</a> 

       </div> 
     </div> 
     </li> 

JS

var urlFire = angular.module("UrlFire", ["firebase"]); 
function MainController($scope, $firebase) { 
    $scope.favUrls = $firebase(new Firebase('https://lllapp.firebaseio.com/')); 
    $scope.urls = []; 
    $scope.favUrls.$on('value', function() { 
    $scope.urls = []; 
    var mvs = $scope.favUrls.$getIndex(); 
    for (var i = 0; i < mvs.length; i++) { 
     $scope.urls.push({ 
     name: $scope.favUrls[mvs[i]].name, 
     title: $scope.favUrls[mvs[i]].title, 
     key: mvs[i] 
     }); 
    }; 
}); 
+0

最好不要使用'$ index'来执行像delete()这样的函数。如果将任何过滤器添加到“ng-repeat”中,它将不会是原始数组中的对象的位置,而是它将被过滤的数组中的索引。传入整个对象并在控制器中进行索引。 – charlietfl

回答

1

当你添加元素到您的阵列可以使用的unshift(),而不是推()。它将数组添加到数组的开头,而不是最后,因为角度视图是基于模型的,所以它会将它添加到顶部。

0

使用$ scope.urls.splice(index_to_insert,0,对象);所以在你的情况下,你可以做

var obj = { 
     name: $scope.favUrls[mvs[i]].name, 
     title: $scope.favUrls[mvs[i]].title, 
     key: mvs[i] 
     }; 
$scope.urls.splice(0,0, obj); 
相关问题