問題タブ [indexeddb]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
html - chrome/opera/firefox のどのバージョンが IndexedDb をサポートしていますか?
このページのコメントにあるように、 chromeが本当にIndexedDBをサポートしているかどうか、私には理解できませんでした。
chrome/opera/firefox のユーザー スクリプトを作成するつもりですが、 localstorage を使用しないことに決めました。localstorageの代わりに IndexedDB を試してみたいだけですが、スクリプトを書き始める前に知っておく必要があります。
chrome/opera/firefox のどのバージョンが IndexedDb をサポートしていますか?
ありがとう。
javascript - indexedDBを使用してthree.jsメッシュオブジェクトを保存する
このチュートリアルを利用して、indexedDBでキャッシュすることにより、大きなメッシュで帯域幅を節約できるかどうかを確認しようとしています。
だから私がやっているローダーコールバック関数の中で...
ただし、を含むオブジェクトがobject
データベースに追加された最後の行で、次のエラーが発生します。
Uncaught Error: DATA_CLONE_ERR: DOM Exception 25
これが実際に何を意味するのかわかりませんが、それを回避する方法があるはずです。
html - Html5 IndexedDB - キーで値を取得する
ほとんどのチュートリアルでは、オブジェクト ストアからすべてのレコードをカーソルで反復処理して取得する方法が示されています。しかし、キー "myKey" を使用してオブジェクト ストアから値を取得するにはどうすればよいでしょうか。
javascript - window.indexedDBが未定義と評価されるのはなぜですか?(IndexedDBの使用方法は?)
HTML5のIndexedDBをいじっています。
以下は、 ChromeまたはFirefoxでは機能しないhttp://html5-demos.appspot.com/static/html5storage/index.html#slide31の簡単なコードで、Firebugで次のメッセージが表示されます。
Uncaught TypeError:undefined`のメソッド'open'を呼び出すことができません
コードの最初の行は次のとおりです。
誰かが私がこれを機能させるのを手伝ってくれますか?
このインタラクティブなスライドが機能するため、これがブラウザで機能することを私は知っています:http: //html5-demos.appspot.com/static/html5storage/index.html#slide34
javascript - indexedDB setVersionリクエストがブロックされていますか?
jax webGLフレームワークでindexedDBを使用しようとしていますが、何らかの理由でsetVersionが機能していません。
これが関連するコーヒースクリプトです
起動するバージョンリクエストに添付されている唯一のハンドラーはonblockedですが、リクエストがブロックされることの意味や、なぜこれが発生するのかさえわかりません...
バージョンリクエストがブロックされるのはなぜですか?
html - ブラウザ間での IndexDB サポートの状況は?
どうやら SQL ストレージは (ありがたいことに) W3C によって廃止されており、IndexedDB が推奨されているようです。一方、次のようなものに出くわしました。
var indexedDB = window.indexedDB || window.webkitIndexedDB || window.mozIndexedDB;
それは私に関係します。
IE はサポートされていますか? 各種ブラウザのサポートレベルは? この情報を一覧表示するページが見つからないようです。
javascript - IndexedDBの概念上の問題(関係など)
私はWebアプリケーションのオフライン機能についての論文を書いています。私の仕事は、サーバー側のリレーショナルデータベースとクライアントとサーバー間のAjax/JSONトラフィックを備えたWebアプリケーションを介したオフラインストレージの可能性を示すことです。私の最初の実装では、localStorageを使用したアプローチを使用し、リクエストURLをキーとして各Ajax応答を値として保存しました。アプリは問題なく動作します。ただし、次のステップでは、クライアント側のデータベースを使用して、より高度なバージョンを実装したいと思います(つまり、論文で必要です)。サーバーはリレーショナルデータベースを維持しているため、WebSQLデータベースが直感的な選択でした。しかし、ご存知のように、この標準は廃止されており、将来が不透明なテクノロジーは使用したくありません。したがって、IndexedDBを使用してクライアント側のデータベースロジックを実装したいと思います。不運にも、
私のタスクはかなり単純なようです 。IndexedDBを使用してクライアントにサーバー側データベースを実装し、サーバーから一度フェッチされたすべてのデータを複製します。これをはるかに簡単にしない問題は次のとおりです。
- サーバー側のデータベースはリレーショナルであり、IndexedDBは(多かれ少なかれ)オブジェクト指向です
- クライアント側とサーバー側のデータベースを同期する直感的な方法はありません
- サーバー上で外部キーとJOINを使用して実装されるIndexedDBの関係を直感的に実装する方法はありません。
今、私は実装を開始することを本当に恐れている概念を念頭に置いています。サーバーデータベース内のすべてのテーブルにオブジェクトストアを作成し、さまざまなオブジェクトストア内のリレーションオブジェクトを手動でプログラムすることを考えました。要するに、大学のコースを管理する私のアプリケーションでは、7つのオブジェクトストアがあります。
サーバーからのJSON応答の例で私のアイデアを示したいと思います(/*これらはコメントです*/):
IndexedDBを使用してデータを格納するアルゴリズムは、オブジェクトストアに適用される各オブジェクトを適切なオブジェクトストアに格納し、オブジェクトをこれらのオブジェクトへの参照に置き換えます。たとえば、上記のコースオブジェクトは、オブジェクトストア'course'では次のようになります。
IndexedDBを使用してデータを取得するアルゴリズムは、次のようになります(再帰パターンを漠然と念頭に置いています)。
特にIndexedDBの非同期性のために、この実装が非常に面倒であることは明らかです。また、コースオブジェクトを取得するためだけにデータベースに対してさまざまなトランザクションが発生し、パフォーマンスが大幅に低下します(とにかく、IndexedDBトランザクションのパフォーマンスがどのようになるかはわかりません)。
どうすればこれをより良く、より簡単に行うことができますか?
私はすでに同様の問題を表すこれらのスレッドを見ました:link1、link2。これらには、これ以上簡単な解決策はありません。さらに、いくつかの理由から、IndexedDBラッパーフレームワークの使用は避けたいと思います。
また、自分の問題についてIndexedDBで完全に間違った方向に進んでいることも想像できます。
編集:
最終的に、IndexedDBのオブジェクト自体に参照を格納するというアプローチを追求することになりました。これにより、参照が多い大量のデータの場合に、パフォーマンスの問題が発生する可能性があります。ただし、賢く使用すれば、ほとんどの場合、膨大な量の反復とデータベースヒットを回避でき、複雑なデータベーススキーマをメモリまたはIndexedDB自体に格納する必要はありません。
一般的に言って、私はIndexedDBをスキーマレスデータベースとして動的でまっすぐなアイデアを何らかの方法で誤解しているという印象を受けます。しかし、いずれにせよ、私はすべてをJavaScriptで実装しました。それは正常に機能し、矛盾が発生する可能性はありません。
indexeddb - IndexedDB による全文検索
全文検索が IndexedDB の仕様の一部として採用される時期について何か考えはありますか? SQL のように %LIKE% クエリをシミュレートすることは可能ですか? これはかなりの制限のようです。
indexeddb - IndexedDB から上位 1 行を取得する方法
IndexedDB で一番上の 1 行だけを取得する方法はありますか? 何も見つかりませんでした。
html - IndexedDB に ArrayBuffer を保存する
バイナリ データ (ArrayBuffer オブジェクト内) を IndexedDB に保存するにはどうすればよいですか?
IndexedDB の仕様では ArrayBuffer について言及していません。つまり、サポートされていないということですか (また、ArrayBuffer を文字列または配列としてパックする必要がありますか?)。