检查Gulp中是否存在文件

Cai*_*aki 30 javascript node.js gulp

我需要检查gulp任务中是否存在文件,我知道我可以使用节点中的某些节点函数,有两个:

fs.exists()fs.existsSync()

问题是在节点文档中,说这些函数将被弃用

Ale*_*der 41

您可以使用 fs.access

fs.access('/etc/passwd', (err) => {
    if (err) {
        // file/path is not visible to the calling process
        console.log(err.message);
        console.log(err.code);
    }
});
Run Code Online (Sandbox Code Playgroud)

此处列出了可用的错误代码


使用fs.access()之前调用来检查文件的可访问性fs.open(), fs.readFile()fs.writeFile()不推荐.这样做会引入竞争条件,因为其他进程可能会在两次调用之间更改文件的状态.相反,用户代码应该直接打开/读取/写入文件,并处理在文件无法访问时引发的错误.