来自fs.readdirSync(path)
的文档:同步readdir(3)。返回不包含'.'
和'..'
的文件名数组。
我做:
console.log(require('fs').readdirSync('~'))
我得到Uncaught Error: ENOENT, no such file or directory '~'
。
我做错了什么或者readdirSync
无论出于何种原因都无法使用Node-Webkit?我应该用其他方式阅读主目录吗?
答案 0 :(得分:4)
波浪号~
是一个bash函数,因此Node无法识别其含义。
在这种情况下,您需要在readDirSync()
函数中使用主目录的绝对路径。
在Unix系统上,您还可以使用环境变量$ HOME,其中〜是别名。
var path = process.env.HOME;
Windows等效环境变量是HOMEPATH。
编辑:
正如OP所提到的,npm pakage path-extra提供了一个跨平台的homedir()方法