Skip to content

Commit f804a34

Browse files
committed
sqlitestorage桥接鸿蒙方式及鸿蒙原生方法重写
1 parent d4d1acc commit f804a34

File tree

4 files changed

+318
-124
lines changed

4 files changed

+318
-124
lines changed

NativeSQLitePlugin.ts

Lines changed: 13 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -2,13 +2,19 @@ import type {TurboModule } from 'react-native/Libraries/TurboModule/RCTExport';
22
import {TurboModuleRegistry} from 'react-native';
33

44
export interface Spec extends TurboModule {
5-
DEBUG(isDebug: boolean): void;
6-
enablePromise(enablePromise: boolean): void;
7-
openDatabase(dbname:string,dbVersion:string,dbDisplayname:string,dbSize:number,success?: () => void,error?: (e: Object) => void,): Object;
8-
deleteDatabase(dbname: string, success?: () => void, error?: (err: Object) => void): void;
9-
executeSql(store:Object,statement: string, params?: any[], success?: (s?: Object) => void, error?: (e: Object) => void): Promise<void>;
10-
// transaction(scope: (tx: Transaction) => void,error?: (e: Object) => void,success?: () => void,): void;
11-
close(store:Object,success: () => void, error: (err: Object) => void): void;
5+
6+
open(openargs:Object,opensuccesscb:() => void,openerrorcb:(e:Object) => void):void;
7+
8+
close(closeargs:Object,mysuccess:(t:Object,r:Object) => void,myerror:(e:Object) => void):void;
9+
10+
attach(attachargs:Object,mysuccess:(t:Object,r:Object) => void,myerror:(e:Object) => void):void;
11+
12+
backgroundExecuteSqlBatch(args:Object,mysuccess:(result:Object) => void,myerror:(e:Object) => void):void;
13+
14+
echoStringValue(openargs:Object,mysuccess:(testValue:Object) => void,myerror:(e:Object) => void):void;
15+
16+
delete(args:Object,mysuccess:(r:Object) => void,myerror:(e:Object) => void):void;
17+
1218
}
1319

1420
export default TurboModuleRegistry.getEnforcing<Spec>('SQLitePlugin');

lib/sqlite.core.js

Lines changed: 16 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,8 @@
1313
* See http://opensource.org/licenses/alphabetical for full text.
1414
*/
1515

16-
var NativeModules = require("react-native").NativeModules;
16+
// var NativeModules = require("react-native").NativeModules;
17+
import NativeModules from '../NativeSQLitePlugin'
1718
var DB_STATE_INIT, DB_STATE_OPEN, READ_ONLY_REGEX, SQLiteFactory, SQLitePlugin, SQLitePluginTransaction, argsArray, dblocations, newSQLError, txLocks;
1819

1920
var plugin = {};
@@ -86,7 +87,20 @@ plugin.exec = function(method, options, success, error) {
8687
if (plugin.sqlitePlugin.DEBUG){
8788
plugin.log("SQLite." + method + "(" + JSON.stringify(options) + ")");
8889
}
89-
NativeModules["SQLite"][method](options,success,error);
90+
// NativeModules["SQLite"][method](options,success,error);
91+
if(method=='open'){
92+
NativeModules.open(options,success,error);
93+
}else if(method=='close'){
94+
NativeModules.close(options,success,error);
95+
}else if(method=='attach'){
96+
NativeModules.attach(options,success,error);
97+
}else if(method=='backgroundExecuteSqlBatch'){
98+
NativeModules.backgroundExecuteSqlBatch(options,success,error);
99+
}else if(method=='echoStringValue'){
100+
NativeModules.echoStringValue(options,success,error);
101+
}else if(method=='delete'){
102+
NativeModules.delete(options,success,error);
103+
}
90104
};
91105

92106
plugin.log = function(...messages) {

platforms/harmony/sqlite_storage.har

1.17 KB
Binary file not shown.

0 commit comments

Comments
 (0)