【问题标题】:TypeScript not accessing or importing node moduleTypeScript 未访问或导入节点模块
【发布时间】:2019-02-27 02:23:40
【问题描述】:

首先,我是 Angular 的新手。

我正在尝试使用 crypto-js 模块来加密和解密传递给服务的字符串。该服务被注入到任何使用它的人身上。我的问题是,显然我无法导入对此模块的引用。

我目前的设置是:

Angular CLI: 6.0.8
Node: 9.7.1
OS: win32 x64
Angular: 6.1.7
... animations, common, compiler, compiler-cli, core, forms
... http, language-service, platform-browser
... platform-browser-dynamic, router

Package                           Version
-----------------------------------------------------------
@angular-devkit/architect         0.6.8
@angular-devkit/build-angular     0.6.8
@angular-devkit/build-optimizer   0.6.8
@angular-devkit/core              0.6.8
@angular-devkit/schematics        0.6.8
@angular/cli                      6.0.8
@ngtools/webpack                  6.0.8
@schematics/angular               0.6.8
@schematics/update                0.6.8
rxjs                              6.3.2
typescript                        2.7.2
webpack                           4.8.3

crypto-js 包是由 npm 安装的,并且该文件夹正确地位于 node_modules 文件夹中,如屏幕截图所示。

我的服务(以后代码中不会包含任何敏感信息,仅供测试)如下所示:

import {Injectable, OnDestroy} from "@angular/core";
// will be used in future
import { CookieService } from "ngx-cookie-service";

const algorithm = 'aes-256-ctr';
// Todo generate password
const password = '1xap0957/ara=Xv9';

@Injectable()
export class Abc_tService implements OnDestroy {

  Enc(text) {
    // Encrypt
    var en = this.encrypt(text);
    console.log(en);
    console.log(this.decrypt(en));
  }

  private encrypt(text: string): string {

    return text;
  }

  private decrypt(text): string {

    return text;
  }

  ngOnDestroy() {

  }
}

Enc(text) 方法用于测试。现在我的问题是,我无法导入或访问 crypto-js 模块。

当我尝试导入它时,我也无法访问它。现在我导入的引用似乎引用了我自己的类:

我的目标是在我的服务中使用 crypto-js 模块。我错过了什么?

【问题讨论】:

  • 安装@types/crypto-js
  • 好的,这很简单。非常感谢。

标签: node.js angular node-modules


【解决方案1】:

感谢 Aluan Haddads 对我的问题的评论。解决方案很简单,我必须安装类型。我通过命令使用 npm 做到了这一点:

npm install --save @types/crypto-js

【讨论】:

  • 我还应该提到,上面的这个服务实现了 OnDestroy,这将是 Angular 中 ngOnDestroy 的一个钩子。因为我把它当作一个服务来玩,所以 ngOnDestroy 方法永远不会被执行。只是一个旁注。
猜你喜欢
  • 2012-11-03
  • 2013-08-25
  • 2017-04-03
  • 2015-08-12
  • 1970-01-01
  • 2023-03-09
  • 2019-01-26
  • 2018-07-04
相关资源
最近更新 更多