DEV Community

loading...
Cover image for Save Data To Offline Storage With Localforage

Save Data To Offline Storage With Localforage

Vishnu Damwala
A human being currently living in India🇮🇳 on Earth. Founder of MeshWorld, a web geek, an industry experienced web developer & tutor/instructor currently lives in Surat City.
Originally published at meshworld.in ・1 min read

The localForage is an open-source JavaScript library that refines the experience of saving data to web browser databases like localStorage, IndexedFB or WebSQL API.

It supports the majority of all types of browser databases.

It is absolutely asynchronous that simply uses browser databases and improves the universal offline experience of the web app.

In this tutorial, we'll see how to save data to browsers in a much easier way with localforage setItem() method.

Localforage setItem() method

  • With localforage setItem(), developers are allowed to store multiple types of data not just strings.
  • It automatically manages and loads the best web browser driver(IndexedDB, WebSQL, and localStorage drivers).
  • It also supports to store blob and arbitrary type of data, so that we can store images, files, etc.
  • It also supports ES6 Promises.

Syntax

setItem(key, value, successCallback);

Types of supported JavaScript objects

  • Array
  • ArrayBuffer
  • Blob
  • Float32Array
  • Float64Array
  • Int8Array
  • Int16Array
  • Int32Array
  • Number
  • Object
  • Uint8Array
  • Uint8ClampedArray
  • Uint16Array
  • Uint32Array
  • String

Example

const user = {
  firstName: "Sunidhi",
  lastName: "Chauhan",
  profession: "Singer 🎤",
};

localforage
  .setItem("userDetails", user)
  .then((value) => {
    console.log("👩‍🎤 " + value.firstName + " " + value.lastName);
  })
  .catch((error) => {
    console.error(error);
  });

Output in console

👩‍🎤 Sunidhi Chauhan

Alt Text

Read the complete post on our site MeshWorld  -  Save Data To Offline Storage With Localforage

Read others post on our site MeshWorld

Hope you like this
Happy 😄 coding
With ❤️ from India 🇮🇳

Discussion (0)