import Nedb from 'nedb'; import { resolve } from 'path'; import config from '@config'; export interface InterfaceDB { user: Nedb doc: Nedb, tag: Nedb }; const { localDb } = config; const filename = name => resolve(localDb.dir, name); const db: InterfaceDB = { user: new Nedb({ filename: filename(localDb.user), autoload: true }), doc: new Nedb({ filename: filename(localDb.doc), autoload: true }), tag: new Nedb({ filename: filename(localDb.tag), autoload: true }) }; export default () => { return async(ctx, next) => { ctx.$db = db; await next(); }; };