仅在窗口点击后填充ng-repeat填充 - AngularJS& PouchDB

时间:2015-09-25 10:50:14

标签: javascript angularjs pouchdb

我从服务中读取以下函数:

var db = pouchService.db;
db.allDocs({startkey: 'move_', endkey: 'move_\uffff', include_docs: true})
.then(function (data) {
    $scope.recordlist = data;
    console.log($scope.recordlist);
});

服务:

angular.module('msfLogger').service('pouchService', PouchService);

function PouchService() {
  var self = this;
  self.db= new PouchDB('FleetDB');
};

在前端,我尝试从$scope.recordlist填充ng-repeat,但是现在,当我加载页面时,ng-repeat将为空,当我点击任何地方时在页面上,它将被填充。

另外,当我在数据库中添加一个新项目时,它只会在页面重新加载后显示并单击窗口,而不是自动显示。

<div class="row msf-row" ng-repeat="record in recordlist.rows">
    <div class="col-md-1">{{record.doc.time}}</div>
    <div class="col-md-1"><strong>{{record.doc.car}}</strong></div>
    <div class="col-md-2">{{record.doc.driver}}</div>
    <div class="col-md-2">{{record.doc.from}}</div> 

    ...
</div>

我错过了什么?

1 个答案:

答案 0 :(得分:1)

我认为即使你有angular-pouchdb作为库,你需要在服务中注入它,如果没有,你正常使用全局PouchDB库,应该手动管理angular.module('msfLogger', ['pouchdb']).service('pouchService', PouchService); function PouchService(pouchDB) { var self = this; self.db= pouchDB('FleetDB'); }; 。 p>

{{1}}