【问题标题】:node-forge import in angular 2 serviceangular 2 服务中的 node-forge 导入
【发布时间】:2021-09-25 14:28:17
【问题描述】:

我正在尝试在我的 Angular 2 项目中使用 Forge (https://github.com/digitalbazaar/forge)。

我运行了以下命令:npm install node-forge 该命令在我的应用程序中创建了 node-forge 目录(在 node-modules 目录中)。

我在 package.json 文件中添加了 node-forge 引用:"node-forge": "0.6.39"(依赖项部分)。

现在,我想使用以下代码在我的 angular 2 服务(打字稿文件)中导入 node-forge 依赖项:

import { Injectable } from '@angular/core';
import { Forge } from 'node-forge';

@Injectable()
export class HashPasswordService {
  constructor() {}
  buildHash(input: string) {
    var hmac = forge.hmac.create();
    hmac.start('sha512', input);
    hmac.update(input);
    return hmac.digest().toHex();
  }
}

但导入不起作用:import { Forge } from 'node-forge'; 我在控制台中出现以下错误(ng serve 命令):

hash-password.service.ts (2, 23): Cannot find module 'node-forge'.
hash-password.service.ts (11, 16): Cannot find name 'forge'.

那么,有人知道我如何导入这个 node-forge 依赖项(使用 npm 包)吗?我是否错过了流程中的一个步骤?

感谢您的帮助!

【问题讨论】:

    标签: node.js angular npm


    【解决方案1】:

    您需要 typescript 定义以及 npm 包..

    我不确定这个包有没有DefinitelyTyped 包所以你可以试试

    npm install typings -g
    typings install node-forge
    

    如果这不起作用,请尝试:

    import { Injectable } from '@angular/core';
    
    declare var Forge: any;
    
    @Injectable()
    export class HashPasswordService {
      private forge: any;
    
      constructor() {
         this.forge = new Forge();
      }
    
      buildHash(input: string) {
        var hmac = forge.hmac.create();
        hmac.start('sha512', input);
        hmac.update(input);
        return hmac.digest().toHex();
      }
    }
    

    【讨论】:

      【解决方案2】:

      只需import * as forge from 'node-forge',就是这样。

      【讨论】:

        【解决方案3】:

        安装这两个包

        npm install node-forge
        npm install @types/node-forge
        

        还有import * as forge from 'node-forge',仅此而已……你可以走了。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2016-06-28
          • 2017-09-05
          • 2017-08-24
          • 2016-07-15
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多