【发布时间】:2021-09-26 22:52:39
【问题描述】:
我正在做一个简单的测试,尝试使用 Angular 和 nodejs 在 Electron 应用程序中获取我的计算机名称。
这是我的脚本:
import { Component, OnInit } from '@angular/core';
import { hostname } from 'os'
@Component({
selector: 'app-home',
templateUrl: './home.component.html',
styleUrls: ['./home.component.css']
})
export class HomeComponent implements OnInit {
constructor() { }
ngOnInit(): void {
console.log(hostname);
}
}
我也安装了npm i @types/node
我收到以下错误:
错误:src/app/components/home/home.component.ts:2:26 - 错误 TS2307:找不到模块 'os' 或其对应的类型声明。 从“操作系统”导入{主机名}
有什么想法吗?这应该很简单,我对这样的问题感到很傻......
编辑:我补充说这是一个电子应用程序!!
【问题讨论】:
-
os是nodejs的一个模块,不能直接用在angular前端侧。
-
我不确定我是否想在我正在访问的网站上看到我的计算机名。 Webapps 不能(并且可以说不应该)访问浏览器沙箱之外的系统级信息。如果此应用程序在隔离环境中运行,那么您可以在后端或服务器中公开 API 以返回主机名。
-
这是一个 Electron 应用程序的事实改变了......一切。不幸的是,我不知道 Electron。