/ / NativeScript con angolare dà un errore di run time - nativescript-angular

NativeScript con angolare dà un errore di run-time - nativescript-angular

Ho appena provato una connessione con la mia app Native-script. Nel file app.component.ts ho creato il mio database e due metodi.

export class AppComponent {
private database: any;
private people: Array<any>;

public constructor() {
console.log(" database service constructors");
(new Sqlite("my.db")).then(db => {
db.execSQL("CREATE TABLE IF NOT EXISTS people (id INTEGER PRIMARY KEY AUTOINCREMENT, firstName TEXT, lastName Text)").then(db => {
this.database = db;
}, error => {
console.log("CREATE TABLE ERROR", error);
})
}, error => {
console.log("CREATE DB ERROR", error);
})}
public insert() {
console.log("Acess Insert Ok");
this.database.execSql("INSERT INTO people (firstName, lastName) VALUES (?,?)", ["Randika", "Perera"]).then(id => {
console.log("Insert Ok");
this.fetch();
}, error => {
console.log("INSERT ERROR: ", error);
})}
public fetch() {
this.database.all("SELECT * FROM people").then(rows => {
this.people = [];
for (let row in rows) {
this.people.push({
"id": rows[row][0],
"firstName": rows[row][1],
"lastName": rows[row][2]
})
}

}, error => {
console.log("SELECTOR ERROR:", error);
});}}

Nel file app.component.hlml:

<ActionBar title="My App">
<ActionItem text="Add" (tap)="insert()"></ActionItem>

Ma dopo aver fatto clic sul pulsante aggiungi, viene visualizzato un errore simile

W/System.err(10737):    at com.tns.Runtime.callJSMethodNative(Native Method)
W/System.err(10737):    at com.tns.Runtime.dispatchCallJSMethodNative(Runtime.java:1197)
W/System.err(10737):    at com.tns.Runtime.callJSMethodImpl(Runtime.java:1061)
W/System.err(10737):    at com.tns.Runtime.callJSMethod(Runtime.java:1047)
W/System.err(10737):    at com.tns.Runtime.callJSMethod(Runtime.java:1028)
W/System.err(10737):    at com.tns.Runtime.callJSMethod(Runtime.java:1018)

Qualcuno può aiutare con questo?

risposte:

0 per risposta № 1

Quando sto cercando più su di esso in emulatore c'è un errore come "execSql non è una funzione". Quindi lo cambio in execSQL come ho usato in cima alla e ora funziona bene.