Archiviare dati in Javascript con localForage
Tra i vari metodi di archiviazione usati fino adesso, forse localForage risulta uno dei milgiori e più flessibili.
In pratica usa la stessa sintassi di localStorage, ma mette a disposizione una API molto più ampia.
Ed è anche in grado di usare altri metodi di archiviazione che abbiamo già visto:
La libreria la trovate sulla pagina ufficiale di GitHub; dovete includere un unico file Javascript.
Vediamo prima un esempio basico:
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Test localForage</title>
<script src="localForage.js"></script>
<script>
localforage.setItem('nome2', 'Mattepuffo2').then(function () {
return localforage.getItem('nome2');
}).then(function (value) {
console.log(value);
}).catch(function (err) {
console.log('ERRORE: ' + err);
});
</script>
</head>
<body>
</body>
</html>
Qua sotto, invece, un esempio usando IndexedDB:
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Test localForage</title>
<script src="localForage.js"></script>
<script>
localforage.config({
driver: localforage.INDEXEDDB,
name: 'test',
version: 1.0,
size: 4980736,
storeName: 'mattepuffo',
description: 'Testiamo localForage con INDEXEDDB'
});
localforage.setItem('nome2', 'Mattepuffo2').then(function () {
return localforage.getItem('nome2');
}).then(function (value) {
console.log(value);
}).catch(function (err) {
console.log('ERRORE: ' + err);
});
</script>
</head>
<body>
</body>
</html>
Come vedete, cambia solo che richiamiamo prima il metodo config per configurare il tipo di archiviazione.
Tutto il resto rimane identico, e questa è la cosa che mi è piaciuta di più.
Cosi facendo, non dobbiamo cambiare sintassi se decidiamo di usare un altro tipo di archivio!
Enjoy!
javascript localforage localstorage websql indexeddb
Commentami!