-
Fototrend
JavaScript != Java (A JavaScript nem összekeverendő a Javával, két különböző programozási nyelvről van szó!)
Új hozzászólás Aktív témák
-
Jim-Y
veterán
En ezt valahogy igy oldanam meg. Kicsit objektumorientaltabb.
class DataSourceIndexedDB extends EventEmitter {
get MESSAGES() {
return {
CONNECTION_ERROR: 'error',
DATABASE_OPENED: 'db-opened'
}
}
constructor(databaseName) {
this._dbName = databaseName;
this._database = null;
}
openDatabase() {
const request = indexedDB.open(this._dbName, 1);
request.onerror = this.onConnectionError.bind(this);
request.onsuccess = this.onConnectionSuccess.bind(this);
}
onConnectionError(event) {
this.emit(this.MESSAGES.CONNECTION_ERROR, {
code: event.target.errorCode
});
}
onConnectionSuccess(event) {
this._database = event.target.result;
this.emit(this.MESSAGES.DATABASE_OPENED);
}
getObjectStore(storeName, mode) {
const tx = this._database.transaction(storeName, mode);
return tx.objectStore(storeName);
}
}
const database = 'xyz';
const table = 'xyz';
const indexedDB = new DataSourceIndexedDB(database);
// might be automated in constructor
indexedDB.openDatabase();
indexedDB.on(indexedDB.MESSAGES.DATABASE_OPENED, () => {
const store = indexedDB.getObjectStore(table, 'readwrite');
const request = store.getAll();
request.onsuccess = (event) => {
const data = event.target.result;
// do smtg with data
};
request.onerror = (event) => {
// error handling
}
});
Új hozzászólás Aktív témák
- Eredeti játékok OFF topik
- Mennyibe fog kerülni a Steam Machine?
- Gyúrósok ide!
- Telekom otthoni szolgáltatások (TV, internet, telefon)
- Futás, futópályák
- Otthoni hálózat és internet megosztás
- Melyik tápegységet vegyem?
- Debrecen és környéke adok-veszek-beszélgetek
- Huawei MediaPad M5 - nagyot szól
- Okosóra és okoskiegészítő topik
- További aktív témák...
- iPhone XR 64GB Black -1 ÉV GARANCIA - Kártyafüggetlen, MS3993, 100% Akkumulátor
- Telefon felvásárlás!! Samsung Galaxy S23/Samsung Galaxy S23+/Samsung Galaxy S23 Ultra
- Eredeti Lenovo 135W töltők (sárga téglalap)
- AORUS Gen4 AIC Adaptor nagysebességű PCIe 4.0 M.2 SSD bővítő kártya (4db SSD hely)
- GYÖNYÖRŰ iPhone SE 2020 128GB Red -1 ÉV GARANCIA - Kártyafüggetlen, MS2183
Állásajánlatok
Cég: Laptopszaki Kft.
Város: Budapest
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest

