当前位置: 首页 > Web前端 > HTML

客户端开发(Electron)数据存储

时间:2023-03-28 01:27:59 HTML

鍚勪綅浜诧紝鎴戞槸鈥滃墠绔皬鏂板悓瀛︹€濓紝馃槆闀挎湡浠庝簨鍓嶇寮€鍙戯紝Android寮€鍙戯紝鐑》浜庢妧鏈紝鎴戣鍘诲湪缂栫▼鐨勯亾璺笂瓒婅蛋瓒婅繙~Electron鏄竴涓熀浜嶫avaScript銆丠TML鍜孋SS鏋勫缓妗岄潰搴旂敤绋嬪簭鐨勬鏋躲€傚皢Chromium鍜孨ode.js宓屽叆鍒癊lectron浜岃繘鍒舵枃浠朵腑锛屾偍鍙互缁存姢JavaScript浠g爜搴撳苟鍒涘缓鍙湪Windows銆乵acOS鍜孡inux涓婅繍琛岀殑璺ㄥ钩鍙板簲鐢ㄧ▼搴忊€斺€旀棤闇€鏈湴寮€鍙戠粡楠屻€傚墠瑷€锛氭暟鎹瓨鍌ㄤ篃鏄簲鐢ㄧ▼搴忓紑鍙戜腑蹇呬笉鍙皯鐨勫姛鑳姐€傚湪Electron寮€鍙戜腑锛屾湰鍦版枃浠躲€佹祻瑙堝櫒鎻愪緵鐨勫獟浣撳拰SQLite鏁版嵁搴撻兘鏀寔鏁版嵁鎸佷箙鍖栥€係QLite鏄竴绉嶈交閲忕骇鐨勫叧绯诲瀷鏁版嵁瀛樺偍锛屽湪绉诲姩寮€鍙戜腑涔熻骞挎硾浣跨敤銆傛湰鍦版枃浠跺瓨鍌細瀛樺偍鐩綍锛氱敱浜庝笉鍚岀郴缁熺殑鏂囦欢鐩綍涓嶇粺涓€锛孍lectron鎻愪緵浜嗕笓鏈夌殑API鏂逛究鎴戜滑鑾峰彇鐩綍(app.getPath("userData");)甯哥敤鐢ㄦ埛鐩綍锛氭闈€佹枃妗c€佷笅杞姐€佸浘鐗囥€侀煶涔愩€佽棰戜笓鐢ㄦ枃浠剁洰褰曪細temp瀵瑰簲绯荤粺涓存椂鏂囦欢澶硅矾寰勩€偮積xe瀵瑰簲褰撳墠鎵ц绋嬪簭鐨勮矾寰勩€偮穉ppData瀵瑰簲搴旂敤绋嬪簭鐢ㄦ埛涓€у寲鏁版嵁鐩綍銆倁serData鏄痑ppData璺緞鍔犱笂app鍚嶇О璺緞锛屾槸appData鐨勪竴涓瓙璺緞銆傝繖閲屾墍璇寸殑搴旂敤鍚嶇О鏄紑鍙戣€呭湪package.json涓畾涔夌殑name灞炴€х殑鍊笺€傜郴缁熼粯璁ょ洰褰曪細褰撳墠鐢ㄦ埛鐨勪富鐩綍锛歳equire('os').homedir();/C:\Users\<鐢ㄦ埛鍚?榛樿涓存椂鏂囦欢鐩綍锛歳equire('os').homedir();/C:\Users\<鐢ㄦ埛鍚?\AppData\Local\Temp鏂囦欢璇诲啓鎿嶄綔锛氱‘瀹氭枃浠剁洰褰曪細constdataPath=path.join(app.getPath('userData'),'data.json')澶嶅埗浠g爜鏂囦欢鍐欏叆锛歠s.writeFileSync(dataPath,JSON.stringify({username:"admin",version:"0.0.1"}),{encoding:"utf-8"});澶嶅埗浠g爜鏂囦欢璇诲彇锛歝onstcontent=fs.readFileSync(dataPath,{encoding:"utf-8"});console.log("[鍐呭]>",鍐呭);澶嶅埗浠g爜绗笁鏂瑰簱浣跨敤锛歭owdb:github.com/typicode/lo...锛岀畝鍗曟柟渚夸娇鐢ㄦ湰鍦癑SON鏁版嵁搴撴墿灞曘€俥lectron-store锛歡ithub.com/sindresorhu...锛屼笓闂ㄤ负Electron璁捐鐨勪竴涓墿灞曪紝鐢ㄤ簬璁块棶鐢ㄦ埛閰嶇疆銆佸簲鐢ㄧ姸鎬佸拰缂撳瓨銆?github.com/sindresorhu...)SQLite鏁版嵁瀛樺偍锛氬畨瑁卬ode-sqlite3鎵╁睍锛歯pminstallsqlite3--build-from-source--runtime=electron--target=13.6.9--dist-url=https://atom.io/download/electron澶嶅埗浠g爜瀹夎knexjs鎵╁睍锛歯pminstallknex--save澶嶅埗浠g爜銆婂洜sqlite鏈畨瑁呮垚鍔燂紝璋冭瘯鍚庤ˉ鍏呫€嬭繖涓湴鏂圭湡鐨勬槸涓潙锛岃俯杩囧潙鐨勭暀涓湴鍧€馃槶鎬荤粨锛氣€嶁€嶁€嶁€嶄互涓婂叧浜嶦lectronStorage鏂瑰紡涓殑鏁版嵁寮€鍙戯紝涓嶅悓鐨勬暟鎹€傚悎涓嶅悓鐨勫瓨鍌ㄦ柟寮忥紝瀹為檯寮€鍙戜腑鍙互鐏垫椿浣跨敤锛屾祻瑙堝櫒瀛樺偍鏂瑰紡杩欓噷灏变笉浠嬬粛浜嗐€傛杩庡叧娉ㄦ垜鐨勫叕浼楀彿鈥滃墠绔皬鏂板悓瀛︹€濓紝鍘熷垱鎶€鏈枃绔犵涓€鏃堕棿鎺ㄩ€併€?/p>