如何在Angle 8中使用Node.js模块?

时间:2019-08-29 10:44:51

标签: node.js angular typescript

我无法在我的angular 8应用程序中使用nodeJS全局模块。例如“ fs”模块。我想通过使用nodeJS'fs'模块执行writeFile和readFile操作。我已经尝试了很多方法,但是无法在我的angular 8应用程序中访问这些模块。请帮助我...

2 个答案:

答案 0 :(得分:1)

首先,您不能使用Angular中的nodejs库,因为它在客户端浏览器中工作而不是在服务器中工作。为nodejs编写的第三方NPM软件包很少可以在angular(例如:auth2,jwt)中使用,但是您需要为此添加角度的打字。

因此请确保您没有使用系统访问angular的节点包,因为angular仅在浏览器中具有控制权。

答案 1 :(得分:0)

如果您正在使用Angular开发Electron应用,则必须进行一些工作才能访问节点api。

  1. 安装ngx-electron并导入NgxElectronModule(在自述文件中遵循Installation)。

  2. 在需要调用节点api的位置上注入ElectronService。

  3. 通过this._electronService.remote.require(string)导入所需的软件包。

以下是通过节点api获取D:\中文件列表的示例。

const fs = this.electronService.remote.require('fs');
console.log(fs.readdirSync('D:\\'));