node文件模块
fs文件模块
fs原生的文件模块不支持promise
API,可以通过在util
中导入promisify()
函数,将fs.readFile
等方法放入后得到支持promise
API的新方法。
const fs = require("fs");
const { promisify } = require("util");
const readFile = promisify(fs.readFile);
const writeFile = promisify(fs.writeFile);
exports.getDB = async () => {
return JSON.parse(await readFile("./src/server/db.json", "utf8"));
};
exports.setDB = async function (data) {
console.log(data);
await writeFile("./src/server/db.json", JSON.stringify(data));
return await this.getDB();
};
虽然fs有同步读取的方法,但是应该使用异步方法读写文件