0

Ich erstelle eine Hybrid-App von Telerik App Builder in Visual Studio. Ich kann nicht auf sqlite db zugreifen, das extern erstellt wird. Aber ich kann auf die Datenbank zugreifen, die zur Laufzeit erstellt wird. Ich habe einige Seiten erwähnt, diese Lösungen sind für mich nicht geeignet. Der folgende Code wird erstellen db und darauf zuzugreifen, während der LaufzeitZugriff auf die SQLite db, die extern erstellt wird

var app = {}; 
app.db = null; 

app.openDb = function() { 
    var dbName = "Test.sqlite"; 

    //DB creation for Simulator 
    if (window.navigator.simulator === true) { 
     app.db = window.openDatabase(dbName, "1.0", "Test Database", 1073741824); 
     console.log("Database Created!"); 
    } 
    //DB creation for devices 
    else { 
     app.db = window.sqlitePlugin.openDatabase(dbName); 
     console.log("Database Accessed!"); 
    } 
} 

ich die Datenbank zugreifen möchten, die in dem Datenordner vorhanden ist. Bitte beziehen Sie sich auf das Bild.

enter image description here

Ich versuchte, den db in www Ordner zu legen und versuchen, darauf zuzugreifen durch den folgenden Code

app.db = window.sqlitePlugin.openDatabase({name: "Test.db", createFromLocation: 1}); 

Es wird die folgende Fehler

Uncaught TypeError: Cannot read property 'openDatabase' of undefined 

So geben, wie Kann ich auf die extern erstellte SQLite db zugreifen?

enthalten ich die folgenden Skripte im Projekt

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

Antwort

1

Es sieht aus wie Ihr Problem ist, dass window.sqlitePlugin nicht definiert ist. Sind Sie sicher, dass das Plugin richtig installiert ist? Außerdem müssen Sie bis zum Ereignis deviceReady warten, bevor Sie window.sqlitePlugin verwenden.

+0

Vielen Dank für Ihren Vorschlag. Ich habe die Skriptdetails zur Verfügung gestellt, die ich auf meiner Seite eingefügt habe. Bitte verweisen Sie es. Und ich habe diese Funktion im Falle der Gerätebereitschaftsfunktion hinzugefügt. –

+0

Sie sind richtig, eigentlich habe ich verpasst, das folgende cordova-Skript einzuschließen

+0

können Sie bitte lassen Sie mich wissen, wie man auf die Test.sqlite, die unter "Daten" Ordner platziert ist? –