节点fs.readFile函数

时间:2018-08-31 20:21:43

标签: node.js

我是node的新手,我试图了解fs.readFile()函数。文档说它可以接受参数。

fs.readFile(path [,options],callback)。

文档提供了这个简单的示例。

fs.readFile('/etc/passwd', (err, data) => {
  if (err) throw err;
  console.log(data);
});

我的问题是,“ err”参数是否需要称为“ err”,或者可以是诸如“ foo”之类的任何名称。如果可以使用任何名称,代码如何知道将实际错误传递给该参数?

1 个答案:

答案 0 :(得分:0)

使用JavaScript中的回调模式,通常为在执行基础函数期间遇到的错误保留第一个参数。它可以是您喜欢的任意字符串,但是最好使用一些有意义的名称。下面的第二个参数data是在没有发生错误的情况下正在读取的文件的输入。

例如

const fsReadFile = (fileName) => {
    fileName = `${__dirname}/${fileName}`
    return new Promise((resolve, reject) => {
        fs.readFile(fileName, 'utf8', (error, data) => {
            if (!error && data) {
                resolve(data)
            } else {
                reject(error);
            }
        });
    })
}