IndexedDB 2.0が更新されました!
2765 ワード
IndexedDBは、単純な値と構造化されたデータを格納できるブラウザに内蔵されたNoSQLの最下位実装です.ただし、Mozillaのマニュアル(IndexedDB-Web APIインタフェース|MDN)でも、このAPIを直接呼び出すのではなく、サードパーティ製パッケージのライブラリを使用することを推奨しています.Hacker Newsでは、APIが複雑で、SQL機能がないという苦情が寄せられています.これが2017年4月26日までの理由です.IndexedDB 2.0に関するインターネット全体の中国語コンテンツは0(A big flat zero)
IndexedDBは簡単なNoSQL実装であり、APIを自分でカプセル化することができ、SQL構文インタフェースをカプセル化することもできます.
余談:すべてのWebSQLの実現の背後にSQLiteがあるため、委員会はこの提案が標準化される可能性は低いと考えている.委員会の人にとって、SQLiteの説明書を基準に書くのは、本当に意味がありません.標準の価値は複数の実現を統一的に計画することにあるが、1つの実現しかないので、標準には価値がない.SQLiteが好きならWebSQLを使えばいいのに、どうせ違う実現の背後にはそれがある.
Chromeの機能ステータスログによると、2.0には以下の機能が含まれています. Binary keys(正確にはArraybuffer、typed array objects、DataViewインデックス) Object store(オブジェクトストレージ) index renaming(インデックス名の変更) getKey() on IDBObjectStore getPrimaryKey() on IDBIndex
全体的には古いAPIの補完であり、第1世代を理解していない場合は、第1世代のブラウザサポートが全面的で、IE 10も含まれているため、第1世代を先に使用することをお勧めします.2.0の更新はデータベースの著者たちにとってさらに喜んで、いくつかの前の頑固な病気を解決しました.IndexedDBベースのより多くの良いライブラリが出現することを期待している.モンゴやFirebaseのようなNoSQLに慣れているなら、直接使ったり、自分で簡単なパッケージを作ったりしてもいいかもしれません.(ちなみに彼のAPIは本当に鶏を炒めるのが強くて鶏を炒めるのが複雑です)
Mozilla開発ブログの[ブログ][1]ダイジェスト
Setters to
以前のバージョンのIndexでは、オブジェクトのストレージまたはインデックスを増減してデータ・アーキテクチャをアップグレードできますが、名前を変更することはできません.基本的に、これはあなたが永遠に正確に命名できないことを意味します.時間が経つにつれて、多くのものの内在的な意味が変化する可能性があるからです.データベース・アーキテクチャのアップグレードをより効率的に行うことができます.
データベースのライフサイクルフック
... 詳細は[原文参照(En)][1]
ブラウザのサポート
Firefox 51,Chrome 58,Opera release 45
締めくくり
Chrome 58の開発公告に鑑み、IndexedDB 2.0に重点を置いて言及したことがあります.ここでは、何が何なのか、何のためなのかを簡単に説明します.目的は、この規範の背後にある論理を理解したり、ニュースとして見たりすることです.どのように使うかについては、MDNのマニュアルを参照するか、「githubでindexedDB Wrapperを検索」してください.私はまだ重度に使ったことがないので、恥をかかない.
Ref:
[0] What’s new in IndexedDB 2.0? ★Mozilla Hacks(原文)[[1]What’s new in IndexedDB 2.0?|Hacker News(前述のツッコミ)][1][2]Indexed Database API 2.0-Editor’s Draft,21 April 2017[1]:https://news.ycombinator.com/item?id=12793996「[1]What’s new in IndexedDB 2.0?|Hacker News(前述のツッコミ)」(https://news.ycombinator.com/item?id=12793996)
IndexedDBは簡単なNoSQL実装であり、APIを自分でカプセル化することができ、SQL構文インタフェースをカプセル化することもできます.
余談:すべてのWebSQLの実現の背後にSQLiteがあるため、委員会はこの提案が標準化される可能性は低いと考えている.委員会の人にとって、SQLiteの説明書を基準に書くのは、本当に意味がありません.標準の価値は複数の実現を統一的に計画することにあるが、1つの実現しかないので、標準には価値がない.SQLiteが好きならWebSQLを使えばいいのに、どうせ違う実現の背後にはそれがある.
Chromeの機能ステータスログによると、2.0には以下の機能が含まれています.
全体的には古いAPIの補完であり、第1世代を理解していない場合は、第1世代のブラウザサポートが全面的で、IE 10も含まれているため、第1世代を先に使用することをお勧めします.2.0の更新はデータベースの著者たちにとってさらに喜んで、いくつかの前の頑固な病気を解決しました.IndexedDBベースのより多くの良いライブラリが出現することを期待している.モンゴやFirebaseのようなNoSQLに慣れているなら、直接使ったり、自分で簡単なパッケージを作ったりしてもいいかもしれません.(ちなみに彼のAPIは本当に鶏を炒めるのが強くて鶏を炒めるのが複雑です)
Mozilla開発ブログの[ブログ][1]ダイジェスト
Setters to
IDBObjectStore.name
and IDBIndex.name
以前のバージョンのIndexでは、オブジェクトのストレージまたはインデックスを増減してデータ・アーキテクチャをアップグレードできますが、名前を変更することはできません.基本的に、これはあなたが永遠に正確に命名できないことを意味します.時間が経つにつれて、多くのものの内在的な意味が変化する可能性があるからです.データベース・アーキテクチャのアップグレードをより効率的に行うことができます.
let request = indexedDB.open("messageDB", 2);
request.onupgradeneeded = (event) => {
let txn = event.target.transaction;
let store = txn.objectStore("text messages");
store.name = "mobile messages";
let index = store.index("recipient");
index.name = "recipients";
};
IDBDatabase.onclose()
データベースのライフサイクルフック
close
が追加されました.let request = indexedDB.open("bookstore");
request.onsuccess = (event) => {
let db = event.target.result;
db.onclose = (event) => {
alert("the database: " + db.name + "was closed outside the script!");
};
};
... 詳細は[原文参照(En)][1]
ブラウザのサポート
Firefox 51,Chrome 58,Opera release 45
締めくくり
Chrome 58の開発公告に鑑み、IndexedDB 2.0に重点を置いて言及したことがあります.ここでは、何が何なのか、何のためなのかを簡単に説明します.目的は、この規範の背後にある論理を理解したり、ニュースとして見たりすることです.どのように使うかについては、MDNのマニュアルを参照するか、「githubでindexedDB Wrapperを検索」してください.私はまだ重度に使ったことがないので、恥をかかない.
Ref:
[0] What’s new in IndexedDB 2.0? ★Mozilla Hacks(原文)[[1]What’s new in IndexedDB 2.0?|Hacker News(前述のツッコミ)][1][2]Indexed Database API 2.0-Editor’s Draft,21 April 2017[1]:https://news.ycombinator.com/item?id=12793996「[1]What’s new in IndexedDB 2.0?|Hacker News(前述のツッコミ)」(https://news.ycombinator.com/item?id=12793996)