No se puede actualizar la vista, el enlace de datos no funciona – Angularjs y PhoneGap

Estoy tratando de hacer una simple aplicación todo usando PhoneGap (para el dispositivo Android). También usé AngularJS para la vinculación de datos.
Quiero mostrar la lista de tareas guardadas en la base de datos. Cuando depuro con el depurador del cromo, puedo ver la petición del SQL trabajada pero nada aparece cuando lanzar la aplicación en un emulador o en el dispositivo.

DbCtrl.js

var myApp = angular.module('myApp', []); function DbCtrl($scope) { $scope.init = function() { document.addEventListener("deviceready", onDeviceReady, false); } function onDeviceReady() { var db = window.openDatabase("Database", "1.0", "Cordova Demo", 200000); db.transaction(populateDB, errorDB, successDB); } function populateDB(tx) { tx.executeSql('DROP TABLE IF EXISTS DEMO'); tx.executeSql('CREATE TABLE IF NOT EXISTS DEMO (id unique, todo)'); tx.executeSql('INSERT INTO DEMO (id, todo) VALUES (1, "first todo")'); tx.executeSql('INSERT INTO DEMO (id, todo) VALUES (2, "Second todo")'); } function errorDB(err){ alert("Error processing SQL: "+err) } function successDB(){ var db = window.openDatabase("Database", "1.0", "Cordova Demo", 200000); db.transaction(queryDB, errorDB); } // Query the database function queryDB(tx) { tx.executeSql('SELECT * FROM DEMO', [], querySuccess, errorDB); } // Query the success callback function querySuccess(tx, results) { console.log("Returned rows = " + results.rows.length); $scope.todos = results.rows; } $scope.init(); } 

DbIndex.html

 <body ng-app="myApp" > <div ng-controller="DbCtrl"> <div> <h1>SimpleTodos</h1> </div> <div id="mainContent"> <ul ng-repeat="todo in todos"> <li>{{todo.id}}</li> </ul> </div> <div class="ui-bar"> <a href="edit.html">Add Note</a> </div> </div> <script src="../libs/cordova-2.5.0.js"></script> <script src="../libs/angular-1.0.5.js" type="text/javascript" ></script> <script src="dbCtrl.js" type="text/javascript" ></script> </body> 

Alguien sabe por qué la vista no se actualiza? ¿Tenemos alguna forma alrededor?

Esto sucede porque la consulta es asíncrona. Después de actualizar el modelo tiene que activar el resumen de forma angular puede actualizar la vista.

 // Query the success callback function querySuccess(tx, results) { console.log("Returned rows = " + results.rows.length); $scope.todos = results.rows; $scope.$apply(); //trigger digest } 
  • React Native - Aplicación de Android que funciona en Debug, falla en la versión
  • El navegador de Android dificulta los eventos para dos taps en rápida sucesión
  • Se busca: IDE sin conexión para desarrollar Html / JavaScript en tableta Android
  • Creación de una aplicación móvil multiplataforma para SharePoint 2013
  • Iónico: ¿Cómo mostrar el elemento de iones en múltiples líneas?
  • JSartoolkit: camera_para.dat para la cámara trasera Android
  • Jwplayer no reproduce video en algunos teléfonos, código de error 4
  • Para el selector de archivos método openFileChooser () que no llama a WebChromeClient de Kitkat 4.4
  • IScroll con desplazamiento nativo en un eje
  • Trigger touch callout en iOS / android
  • Android: pasando el objeto JSON desde webview javascript a java
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.