Given the following localStorage code (jsfiddle) :// my new informationvar data = {character: "中", totalMistakes: 0};var han = data.character;// create localStorage; Unpack, update, repackage knol/* **** THIS IS THE SECTION TO CONVERT **** */localStorage.knol = '{}'; // create pseudo object, as stringvar knol = JSON.parse(localStorage.knol)knol[han] = data;localStorage.knol = JSON.stringify(knol);// Print to check if all went well.console.log('data: ',data)console.log('han: ',han)console.log('knol: ',knol)console.log('localStorage.knol: ',localStorage.knol)console.log('localStorage.knol: ',JSON.parse(localStorage.knol))console.log('localStorage.knol[han]: ',JSON.parse(localStorage.knol)[han])At the end, localStorage.knol is : { "中": {character: "中", totalMistakes: 0}}I'am looking for a Mongo-like js library to store data on client side indexedDB, with a syntax similar to MongoDB with which I'am already familiar.How to convert localStorage code above into Mongo-like IndexedDB library syntax so to store an object ?EDIT: I suggest minimongo, but any MongoDB-like library storing in indexedDB will do. 解决方案 There is a variety of librairies available to do that.Dexie.jsUsing Dexie.js and its API (jsfiddle) :<!-- Include dexie.js --><script src="https://unpkg.com/dexie@latest/dist/dexie.js"></script><script>var db = new Dexie('MyDatabase');// Define a schemadb.version(1).stores({ knol: 'character, totalMistakes' });// Open the databasedb.open().catch(function(error) { alert('Uh oh : ' + error); });// or make a new onedb.knol.put({ character: '中', totalMistakes: 8 });// Find some old friendsvar mistakes = db.knol.where('totalMistakes');//mistakes.above(6).each (function (item) { console.log (item); });mistakes.aboveOrEqual(0).each (function (item) { console.log (item)});</script>MinimongoI don't recommend it, but there is how to use it in web browsersZangoDB(Exploration ongoing https://jsfiddle.net/vb92pecv/3/ ) 这篇关于像MongoDB一样的JS库在客户端indexedDB中存储对象?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!
09-15 23:09