Node.js 从目录节点Js检索文件

Node.js 从目录节点Js检索文件,node.js,Node.js,我正在使用readDirSync从目录中获取文件。请按以下方式查找代码和错误 var fs = require('fs'); var files = fs.readdirSync('./application/models/'); for(var i in files) { var definition = require('../application/models/'+files[i]).Model; console.log('Model Loaded: ' + files[i]);

我正在使用readDirSync从目录中获取文件。请按以下方式查找代码和错误

var fs = require('fs');
var files = fs.readdirSync('./application/models/');
for(var i in files) {
  var definition = require('../application/models/'+files[i]).Model;
  console.log('Model Loaded: ' + files[i]);
}
第2行有错误。 eNote,Object.readdirSync(fs.js:376:18)上没有这样的文件或目录“/application/models/”

我在同一目录上有应用程序/型号。我已经检查了“/application/models/”和 “应用程序/模型/”但失败。我可以看到同样的东西在服务器上运行

请帮忙


谢谢

您尝试过以下方法吗

var files = fs.readdirSync(__dirname+'/application/models/');

如果在调用
readdirSync
时使用相对路径,请确保它与
process.cwd()
相关。 但是,“require”应该与当前脚本相关。

例如,给定以下结构

server.js (node process)
/lib/importer.js (the current script)
/lib/application/models/
您可能需要将importer.js编写为:


你试过
process.chdir(\uu dirname)
吗?是的,我也试过。它也给了我错误。。没有这样的文件或目录“/home/vikas/project admin/includes/application/models/”,可能是因为权限问题吗?
var fs = require('fs');
var files = fs.readdirSync('./lib/application/models/');
for (var i in files) {
  var definition = require('./application/models/' + files[i]).Model;
  console.log('Model Loaded: ' + files[i]);
}