私は初心者です。イオン1を使用して、ng repeatを使用してリストのデータベースからデータを表示したい場合、結果はビューに表示されません(HTML)。(アンドロイド用のgenymotionエミュレータ) 私は既にチュートリアルを試していますが、成功はありません。イオンフレームワークでng repeatを使用して、リストにあらかじめ埋め込まれたsqlite dbのデータを表示します。
マイコード:
Controllers.js
.controller('ExampleController', function($scope, $cordovaSQLite) {
$scope.allSessions = [];
$scope.selectAll = function() {
var query = "SELECT * FROM meds";
$cordovaSQLite.execute(db, query, []).then(function(res) {
if(res.rows.length > 0) {
console.log("SELECTED -> " + res.rows.item(0).id + " " + res.rows.item(0).nom);
for (var i=0; i<res.rows.length; i++) {
$scope.allSessions.push({
id: res.rows.item(i).id,
nom: res.rows.item(i).nom
})
}
} else {
console.log("No results found");
}
}, function (err) {
console.error("error=>"+err);
});
}
app.js
var Myapp = angular.module('app', ['ionic', 'ngCordova', 'app.controllers']);
var db = null;
Myapp.run(function($ionicPlatform, $cordovaSQLite) {
$ionicPlatform.ready(function() {
if(window.cordova && window.cordova.plugins.Keyboard) {
cordova.plugins.Keyboard.hideKeyboardAccessoryBar(true);
cordova.plugins.Keyboard.disableScroll(true);
}
if(window.StatusBar) {
StatusBar.styleDefault();
}
window.plugins.sqlDB.copy("med.db",0, function() {
db = $cordovaSQLite.openDB({name: 'med.db', location: 'default'});
}, function(error) {
console.error("There was an error copying the database: " + error);
db = $cordovaSQLite.openDB({name: 'med.db', location: 'default'});
});
});
});
meds.html
<div>
<ion-list>
<ion-item ng-repeat="session in allSessions" href="#/app/session/{{session.id}}">
<h3>{{session.id}} {{session.nom}}</h3>
</ion-item>
</ion-list>
</div>
はしてください
助けが必要
は機能しません。 エラー:[$ injector:modulerr] 11-24 15:21:16.344 I/chromium(1730)のためにモジュールapp.controllersをインスタンス化できませんでした:[$ injector:modulerr]モジュールappのインスタンス化に失敗しました。 :エラー:[$ injector:nomod]モジュール 'app.controllers'は利用できません!あなたはスペルが間違っています... ... 2) "、ソース:file:///android_asset/www/lib/ionic/js/ionic.bundle.js(17922) [INFO:async_pixel_transfer_manager_android.cc(60)]非同期ピクセル転送はサポートされていません [INFO:async_pixel_transfer_manager_android.cc(60)]非同期ピクセル転送はサポートされていません) ' –
tsaadi
これは注入エラーです。コントローラを確認して何かを忘れていないか確認してください 基本的には、 、angle.forEachの部分は残っているので大丈夫です。 – fernandoocf
基本的には、アイテムの配列を持つres.rowsを調べる必要があります。各項目に対して、配列にプッシュしますallSessionsと呼ばれています... – fernandoocf