Skip to content

leblanc-simon/indexedDBClosure

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

indexedDBClosure

indexedDBClosure is a library to manipulate indexDB. View examples to see how to use.

How to use

All tables save object. You will be able to search in the indexes of each table.

Initialize the database

Create a database with one table named todo. The table "todo" will have :

  • a key : id
  • an index : name
var database = new indexedDBClosure({
    name: 'indexedDBClosure-todo',
    version: 1,
    tables: [
        {name : 'todo', key : 'id', indexes : [{ name : 'name', key : 'name' }] }
    ]
});

Get an item by key

Retrieve an item by this key and log it

database.ready(function(){
    database.get(['todo'], 1,
        function(item) {
            console.log(item);
        }
    );
});

Search item by index

Search the term "my search" in the name field of todo table. Log each item found and show the number item found.

database.ready(function(){
    var count = 0;
    database.search(['todo'], 'name', 'my search',
        function(item) {
            count++;
            console.log(item);
        },
        function() {
            alert(count + ' items found');
        }
    );
});

Add an item

database.ready(function(){
    var todo = {
        id: 1,
        name: 'My first todo'
    };
    database.add(['todo'], todo, function() {
        alert('This item is added');
    });
});

Remove an item

database.ready(function(){
    database.remove(['todo'], 1, function() {
        alert('This item is removed');
    });
});

Update an item

database.ready(function(){
    var todo = {
        id: 1,
        name: 'My first todo updated'
    };
    database.update(['todo'], 1, todo, function() {
        alert('This item is updated');
    });
});

Get all items

Get all items and for each execute a function

database.ready(function(){
    database.getAll(['todo'], function(item) {
        console.log(item);
    });
});

License

License BSD : http://opensource.org/licenses/bsd-license.php

Author

Simon Leblanc contact@leblanc-simon.eu

About

indexedDBClosure is a library to manipulate indexedDB

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published