Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Вопросы по IndexedDB (https://javascript.ru/forum/misc/27305-voprosy-po-indexeddb.html)

(Sandr) 09.04.2012 01:13

Вопросы по IndexedDB
 
Увидел статью на хабре про индекседДБ, вот теперь пытаюсь разобраться, но после работы с php+mysql как-то не очень привычно. Прошу помощи, т.к. сам ответов не нашёл.

1. что за версия бд ( я про db.setVersion('версия') ) ? Для чего её устанавливать?

2. где в Хроме и ФФ посмотреть содержимое бд?

3. для чего нужны:
db.objectStoreNames; и db.objectStoreNames.contains('chat');
contains('chat') проверяет существование объекта в бд?

4. за что отвечает второй аргумент в методах put и add?

5. Помогите освоить всё это..
Написал код, основываясь на данных из этой статьи http://habrahabr.ru/post/117473/ , но он, естественно, не работает.

var indexedDB = window.webkitIndexedDB || window.mozIndexedDB || window.indexedDB;
  var request = indexedDB.open("name","description");
  request.onsuccess = function(e) {
    var v = "1.0";
    var db = e.target.result;
    if(db.version == '' || db.version != v) {
      //бд не существует
      var setV = db.setVersion(v);
      setV.onsuccess = function(e) {
        var db = e.target.transaction.db;
        if (!db.objectStoreNames.contains('chat')) {
          //объект для хранения записей из чата
          co=db.createObjectStore('chat','id');
          var idbObjectsWait=true;
          while (idbObjectsWait) {
            idbObjectsWait =! (db.objectStoreNames.contains('chat'));
          };

          var t = indexedDB.transaction(['chat'], idbConst.WRITE);
          var s = t.objectStore('chat');
          s.put({'name':'myMessage'},1);
        }
      };
    }
  };
  request.onerror = function() {
    alert('error');
  };

(Sandr) 09.04.2012 17:53

Неужели никто не знает?)
Я понимаю, что возможно в коде нет абсолютно никакой логики и наверняка я делаю всё не так, но всё же если кто может объяснить, пожалуйста, не проходите мимо))

Sonkkorh 24.04.2012 13:34

У меня была похожая проблема, попробуй убрать описание.
var request = indexedDB.open("name");

viy.li 16.05.2012 22:23

Получилось ли ??
 
Получился ли чат и можно ли использовать с пользой данный код?


Часовой пояс GMT +3, время: 04:50.