File tree 3 files changed +21
-2
lines changed
3 files changed +21
-2
lines changed Original file line number Diff line number Diff line change @@ -11,7 +11,8 @@ pnpm install 然后就可以跑起来
11
11
| loki | 13 |
12
12
| idb | 172 |
13
13
| 原生indexedDB | 753|
14
- | dexie | 972 |
14
+ | dexie 单条插入 | 1036 |
15
+ | dexie 批量插入 | 945 |
15
16
| localForage | 两分钟还没返回, 不考虑 |
16
17
17
18
## 10万条数据测试结果
@@ -22,4 +23,5 @@ pnpm install 然后就可以跑起来
22
23
| idb | 5334 |
23
24
| 原生indexedDB | 8687 |
24
25
| dexie | 10464 |
26
+ | dexie 批量插入 | 10816 |
25
27
| localForage | 两分钟还没返回, 不考虑 |
Original file line number Diff line number Diff line change @@ -72,7 +72,9 @@ <h4>Database</h4>
72
72
< br />
73
73
< input type ="radio " name ="db " id ="dbDexie " value ="dexie "/>
74
74
< label for ="dbDexie "> Dexie</ label >
75
-
75
+ < br />
76
+ < input type ="radio " name ="db " id ="bulkDexie " value ="dexie_bulk "/>
77
+ < label for ="bulkDexie "> Dexie 批量插入</ label >
76
78
< br />
77
79
< input type ="radio " name ="db " id ="doNewIDB " value ="new_idb "/>
78
80
< label for ="doNewIDB "> 真正的idb库包</ label >
Original file line number Diff line number Diff line change @@ -177,6 +177,19 @@ function createTester() {
177
177
} ) ;
178
178
}
179
179
180
+ function dexieBulkTest ( docs ) {
181
+ var collection = [ ]
182
+ for ( var i = 0 ; i < docs . length ; i ++ ) {
183
+ var doc = docs [ i ] ;
184
+ doc . id = 'doc_' + i ;
185
+ collection . push ( doc ) ;
186
+ }
187
+
188
+ return dexieDB . transaction ( 'rw' , dexieDB . docs , function ( ) {
189
+ dexieDB . docs . bulkAdd ( collection )
190
+ } ) ;
191
+ }
192
+
180
193
function newIdbTest ( docs ) {
181
194
var promise = Promise . resolve ( ) ;
182
195
@@ -293,6 +306,8 @@ function createTester() {
293
306
return localForageWebSQLTest ;
294
307
case 'dexie' :
295
308
return dexieTest ;
309
+ case 'dexie_bulk' :
310
+ return dexieBulkTest ;
296
311
case 'new_idb' :
297
312
return newIdbTest ;
298
313
case 'idb' :
You can’t perform that action at this time.
0 commit comments