devfty
Version:
Devfty is a library for developer building low code factory
55 lines (46 loc) • 1.26 kB
text/typescript
import localstorage from './localstorage'
const db = {
getData(dbName: string) {
let dbData = {}
try {
dbData = JSON.parse(localstorage.get(dbName) as any)
} catch (e) {
dbData = {}
}
if (typeof dbData !== 'object') {
dbData = {}
}
return dbData
},
setData(dbName: string, dbData: any) {
let dbDataStr = dbData
if (typeof dbDataStr !== 'string') {
dbDataStr = JSON.stringify(dbDataStr)
}
localstorage.set(dbName, dbDataStr)
},
}
export default class DB_BASE {
dbName: string
constructor(dbName: string) {
this.dbName = dbName
if (!this.getData()) {
this.setData({})
}
}
getData() {
return db.getData(this.dbName)
}
setData(dbData: any) {
db.setData(this.dbName, dbData)
}
getTableData(tableName: string) {
const dbValue: any = this.getData()
return dbValue[tableName]
}
setTableData(tableName: string, tableData: any) {
const dbData: any = this.getData()
dbData[tableName] = tableData
this.setData(dbData)
}
}