0
私はJavascriptの約束を新しくしており、適切な連鎖を行うことができません。Promise <any> Ionic2 SQLiteネイティブプラグイン
cordova sqlite pluginを約束のようなAPIにラップするnative SQLite Ionic2 pluginを使用しています。私は解決するSQLクエリを待って、SELECT句を実行しているので、結果セットを使用してデータを取得します。
[...]
executeQuery(query: string, params: any){
let db = new SQLite();
return db.openDatabase({
name: 'applicationData.db',
location: 'default'
}).then(() => {
db.executeSql(query, params).then((resultSet) => {
return resultSet;
}, (err) => {
console.error('Unable to execute sql: ', err);
});
}, (err) =>{
console.error('Unable to open database: ', err);
});
}
getConfig(){
let query = 'SELECT * from configuration';
this.executeQuery(query, []).then((resultSet) => {
resultSet.rows.item(0);
}, (err) => {
});
}
[...]
そして私は取得しています::SQLiteの例では、私のコードと一緒に、以下のとおりである
Property 'rows' does not exist on type 'void'.
[19:13:19] transpile failed
[19:13:19] ionic-app-script task: "build"
[19:13:19] Error: Error
L23: this.executeQuery(query, []).then((resultSet) => {
L24: resultSet.rows.item(0);
L25: }, (err) => {
ありがとうそれはまさに問題でした。私は約束の論理を理解するのに苦労している。 – masual