2016-04-03 10 views
1

.controller('PlaylistsCtrl', function ($scope, $cordovaSQLite) { 
    $scope.playlists = [ 
     { title: 'Reggae', id: 1 }, 
     { title: 'Chill', id: 2 }, 
     { title: 'Dubstep', id: 3 }, 
     { title: 'Indie', id: 4 }, 
     { title: 'Rap', id: 5 }, 
     { title: 'Cowbell', id: 6 } 
    ]; 

    //var db = $cordovaSQLite.openDB({ name: "my.db" }); 

    //// for opening a background db: 
    //var db = $cordovaSQLite.openDB({ name: "my.db", bgType: 1 }); 

    //$scope.execute = function() { 
    // var query = "INSERT INTO test_table (data, data_num) VALUES (?,?)"; 
    // $cordovaSQLite.execute(db, query, ["test", 100]).then(function (res) { 
    //  console.log("insertId: " + res.insertId); 
    // }, function (err) { 
    //  console.error(err); 
    // }); 
    //}; 

}) 

エラー:

enter image description here

+1

ngCordovaを注入しましたか?例えば'angular.module( 'starter.controllers'、['ngCordova'])' – Huey

+0

ありがとうございました。それが問題でした!私はhttps://www.thepolyglotdeveloper.com/2014/11/use-sqlite-instead-local-storage-ionic-framework/を紹介しました。 –

答えて

3
http://ngcordova.com/docs/plugins/sqlite/

コントローラコード以下をご覧ください。

私はこのリンクを参照してエラーを解決しました:https://www.thepolyglotdeveloper.com/2014/11/use-sqlite-instead-local-storage-ionic-framework/

ステップ1:Linkをダウンロードし、ng-cordova.min.jsを "www/js"ディレクトリにコピーします。

ステップ2:あなたのindex.htmlファイルを開き、次の行を追加します:CMDにに

cordova plugin add https://github.com/brodysoft/Cordova-SQLitePlugin.git 

ステップ3次のコマンドを使用し

<script src="js/ng-cordova.min.js"></script> 

をあなたが追加非常に重要ですそれはcordova.js行の上にあります。それ以外の場合は動作しません。

step-4:ngCordovaを使用するには、さらにもう1つ追加する必要があります。我々は、次のように、app.jsで見つかった、私たちのangular.moduleに注入する必要があります。

angular.module('starter', ['ionic', 'ngCordova']) 

それだこと。これでsqliteが使えるようになりました。

関連する問題