You've already forked joplin
mirror of
https://github.com/laurent22/joplin.git
synced 2025-06-15 23:00:36 +02:00
Started fixing ReactNative app
This commit is contained in:
52
ReactNativeClient/lib/database-driver-react-native.js
Normal file
52
ReactNativeClient/lib/database-driver-react-native.js
Normal file
@ -0,0 +1,52 @@
|
||||
import SQLite from 'react-native-sqlite-storage';
|
||||
|
||||
class DatabaseDriverReactNative {
|
||||
|
||||
open(options) {
|
||||
return new Promise((resolve, reject) => {
|
||||
SQLite.openDatabase({ name: options.name }, (db) => {
|
||||
this.db_ = db;
|
||||
resolve();
|
||||
}, (error) => {
|
||||
reject(error);
|
||||
});
|
||||
});
|
||||
}
|
||||
|
||||
setDebugMode(v) {
|
||||
//SQLite.DEBUG(v);
|
||||
}
|
||||
|
||||
selectOne(sql, params = null) {
|
||||
return new Promise((resolve, reject) => {
|
||||
this.db_.executeSql(sql, params, (r) => {
|
||||
resolve(r.rows.length ? r.rows.item(0) : null);
|
||||
}, (error) => {
|
||||
reject(error);
|
||||
});
|
||||
});
|
||||
}
|
||||
|
||||
selectAll(sql, params = null) {
|
||||
return this.exec(sql, params).then((r) => {
|
||||
let output = []
|
||||
for (let i = 0; i < r.rows.length; i++) {
|
||||
output.push(r.rows.item(i));
|
||||
}
|
||||
return output;
|
||||
});
|
||||
}
|
||||
|
||||
exec(sql, params = null) {
|
||||
return new Promise((resolve, reject) => {
|
||||
this.db_.executeSql(sql, params, (r) => {
|
||||
resolve(r);
|
||||
}, (error) => {
|
||||
reject(error);
|
||||
});
|
||||
});
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
export { DatabaseDriverReactNative }
|
Reference in New Issue
Block a user