节点:使用fs.readFile获取错误:EISDIR:对目录的非法操作,读取

时间:2017-05-16 20:56:32

标签: javascript css node.js fs

我在让fs.readFile返回css文件时遇到问题。我已经在this SO post中读到了当您尝试打开文件时出现EISDIR error,但给出的路径是一个目录。但我已经多次检查过,console.log函数中的getCss正在使用正确的文件名和.css扩展名记录正确的路径。问题是什么?提前谢谢!

// Path to MUI css
muiCssFile = path.join(muiDistFolder, 'css', 'mui.css'),  


// Read css files
function getCss(callback) {
  console.log('MUI CSS file path in getCss() :: ', muiCssFile);
  // Code fails here.... 
  fs.readFile(muiCssFile, 'utf8', function (err, css) {
    if (err) {
      return callback(err);
    }
    fs.readFile(styleFile, function (error, customCss) {
      if (error) return callback(error);
      callback(null, css + customCss);
    });
  });

}

1 个答案:

答案 0 :(得分:2)

好的,对于遇到此错误的任何人,我认为这有助于为我的问题提供一个简短的答案。该错误很可能是由于您尝试在目录路径上结束使用fs.readFile并且 NOT 文件时使用的一个或多个路径引起的。

在我上面的具体情况中,错误实际上是在第二次fs.readFile调用时发生的,因此请务必首先检查所有路径并确保它们确实导致文件发现问题路径。希望能帮助别人节省一些时间来克服这个错误。