1
在角服務考慮這種方法:Cordova SQLite返回Promise?
select : function(table) {
window.sqlitePlugin.openDatabase({
name: 'smartLab.db',
location: 'default'
}, function success(db) {
var defer = window.Q.defer();
console.dir(defer);
db.executeSql('SELECT * FROM ' + table, [], function success(rows) {
var resp = [];
for(var i = 0; i < rows.rows.length; i++) {
resp.push(rows.rows.item(i));
}
defer.resolve(resp);
}, defer.reject)
}, function error(err) {
})
}
我從其他服務通過以下方式調用它:
DatabaseService.select(TBL_NAME).then(function(rows) {
// logic goes here
});
我得到的錯誤是:
Uncaught TypeError: Cannot read property 'then' of undefined
我從來沒有用過Q但是很熟悉承諾,任何東西都是跳出來的本質錯誤?顯然,事情是......
顯然是東西本身錯了!謝謝你指出。 –