Manipulação de dados Client-Side com Dexie.js – Parte I

Nesse artigo, traremos uma introdução ao Dexie.js essa será a base para Manipulação de dados Client-Side. Nos próximos artigos traremos outras informações a respeito da biblioteca Dexie.js. Dexie.js  é uma biblioteca para manipulação de API para armazenamento client-side (IndexedDB). Ou seja, podemos traçar um paralelo a grosso modo entre o Dexie.js com um ORM (doctrine, hibernate). As referências para manipulação de dados client-side tem se tornado cada vez mais populares com a consolidação do conceito de PWA. Nesse texto trataremos da manipulação básica dos dados:
  1. Criar Banco para Armazenar informação
  2. Inserir Registro
  3. Recuperar Registro

Criando um banco e chamadas principais do Dexie.js

<!-- CDN -->
<script src="https://unpkg.com/dexie@2.0.4/dist/dexie.min.js"></script>
//instacia uma variável com nome do banco que deseja utilizar
var db = new Dexie("banco_nome");
//a implementação de version() deve respeitar um número decimal
//isso é obrigatório na implementação de uma estrutura de banco da biblioteca, 
//mais detalhes aqui: https://github.com/dfahlander/Dexie.js/issues/59
db.version(1).stores({
       //nome da tabela e campos que farão parte do banco armazenado do lado do cliente
       tabela_nome:'nome,email,telefone'
});

Inserindo registros

var data = {};
data.nome="Joao";
data.email="joao@kipconsultoria.com.br";
data.telefone="41335356132";
//chamada do método para inserção de um objeto
db.tabela_nome.add(data);

Recuperar Registro

//para recuperar informações utilize a chamada get
var elemento= db.tabela_nome.get('Joao');
Essa foi uma pequena introdução da manipulação básica de uma das bibliotecas mais simples de tratamento do IndexedDB o Dexie.js, nos próximos artigos, traremos mais alguns formatos de manipulação num cenário um pouco mais próximo do mundo real. Até a próxima!