的过程。Windows平台返回"win32"。在Windows上,用户的主目录可能是C:\Users[USERNAME]或C:\Documents and Settings[USERNAME],这取决于正在使用的Windows版本。在Unix上,这不是问题。
正如在最近的一个回答中提到的,现在首选的方式很简单:
const homedir = require('os').homedir();
[原答案]为什么不在win32上使用USERPROFILE环境变量?
function getUserHome() {
return process.env[(process.platform == 'win32') ? 'USERPROFILE' : 'HOME'];
}
好吧,依赖于特征而不是变量值会更准确。特别是Windows有两个可能的变量。
function getUserHome() {
return process.env.HOME || process.env.USERPROFILE;
}
编辑:正如在最近的回答中提到的,https://stackoverflow.com/a/32556337/103396是正确的方法(require('os').homedir())。
os.homedir()由此PR添加,是nodejs公共4.0.0版本的一部分。
使用示例:
const os = require('os');
console.log(os.homedir());
getUserRootFolder() {
return process.env.HOME || process.env.HOMEPATH || process.env.USERPROFILE;
}
在某些情况下尝试使用这个:
this.process.env.USERPROFILE
or
this.nw.process.env.USERPROFILE
也就是加上这个或者这个。加工前Nw
推荐文章
- “node_modules”文件夹应该包含在git存储库中吗
- 使用package.json在全局和本地安装依赖项
- this.libOptions.parse不是一个函数
- 对嵌套文件夹运行npm install的最好方法是什么?
- 节点Multer异常字段
- 很好的初学者教程socket.io?
- CALL_AND_RETRY_LAST分配失败-进程内存不足
- 在Ubuntu上安装Node.js
- 使用express.js代理
- Node -使用NODE_MODULE_VERSION 51根据不同的Node.js版本编译
- RabbitMQ / AMQP:单队列,同一消息的多个消费者?
- Linux删除大小为0的文件
- Node.js同步执行系统命令
- 禁用包的postinstall脚本
- 如何确定在android文件的MIME类型?