TypeScript - 如何导入 'os' 模块

17

我正在学习TypeScript,为了实践,我在使用Node构建一个基础的实用程序应用。在这个应用中,我需要使用Node的OS模块。我的问题是,如何导入这个模块?

在我的TypeScript文件中,我有以下代码:

import { os } from 'os';

这行代码会报错:"Cannot find module 'os'"。我缺少了什么?


2
import * as os from 'os' ? - Titian Cernicova-Dragomir
@TitianCernicova-Dragomir,我刚试了一下,我收到了相同的错误。 - Some User
5
也需要安装 @types/node 模块,命令为 npm install @types/node --save-dev - Titian Cernicova-Dragomir
成功了!谢谢。 - Some User
3个回答

25

这将在 TypeScript 中出现问题,如果模块设置为 'commonjs' 且目标设置为 es5Arturo Castro 的解决方案 import * as os from "os" 在这种情况下运行良好。 - ajimae

15

仅更新此条目:

import * as os from 'os';

然后,您可以使用:

const hostname = os.hostname();

这种做法与另一个答案import os from 'os'相比,有什么优势吗? - Joe Lissner
1
当然,os模块没有“默认导出”。当你使用import os from 'os'时,TS会给你一个错误:“模块os没有默认导出”。 - Arturo Castro

0
请确保您在正确的路径位置上 然后按照以下步骤进行操作 1. 运行命令 npm i types/node 然后

根据目前的写法,你的回答不够清晰。请编辑以添加更多细节,帮助他人理解这如何回答所提出的问题。你可以在帮助中心找到关于如何撰写好的回答的更多信息。 - undefined

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接