1

そのコードを使用するにはどうすればよいですか? (これはhttps://github.com/paulocaldeira17/angular-websqlからのものです)つまり、テーブル名を渡してから、ユーザーで配列を取得したいということです。promise を使用する必要があると思いますが、開始方法がわかりません。

$scope.db.selectAll("table_users", function(results) {
  $scope.users = [];
  for(var i=0; i < results.rows.length; i++){
     $scope.users.push(results.rows.item(i));
  }
  $scope.$apply();
})
4

1 に答える 1

2

websql 操作には promise を使用することをお勧めします。

SampleService.getUsers("table_name").then(function(){
  console.log("Array of users");
});

サービス

getUsers:function(table_name){
  var deferred = $q.defer();
  $scope.db.selectAll("table_users", function(results) {
  $scope.users = [];
  for(var i=0; i < results.rows.length; i++){
     $scope.users.push(results.rows.item(i));
  }
   deferred.resolve($scope.users);
});
  return deferred.promise;

}

コードは実際のものではありませんが、問題を解決するための全体的なアイデアを提供します。

angularjs で $q promise を使用するためのリファレンス

  1. 漫画で説明された約束

  2. Angular ドキュメントから

  3. http://lostechies.com/gabrielschenker/2014/02/04/angularjspart-11-promises/
于 2014-06-18T09:19:26.080 に答える