プロミス化
util
モジュールのpromisify
でラップすることでPromise
関数化できます。
const {promisify} = require('util');
const {readFile} = require('fs');
const readFilePromise = promisify(readFile);
readFile
あるディレクトリ上にあるファイルやディレクトリ名の一覧を取得します。
fs.readFile('./package.json', 'utf-8', (err, content) => {
if (err === null) {
// `Error: EISDIR: illegal operation on a directory` など
}
console.log(content);
// {"name": "...", ...}
}
画像などを読み込む時は、utf-8
指定はいりません。
fs.readFile('./static/logo.png', (err, content) => {
// ...
}
readdir
あるディレクトリ上にあるファイルやディレクトリ名の一覧を取得します。
fs.readdir('.', (err, list) => {
if (err === null) {
// `Error: ENOENT: no such file or directory` など
}
console.log(list);
// [
// '.git',
// ...
// 'yarn.lock'
// ]
}