instalo modulo:
npm install --save cryptoLo importo a mi componente:
import { createHmac } from "crypto";Pero me sale error:
ERROR en -------------- (4,28): No se puede encontrar el módulo 'crypto'.
¿Qué estoy haciendo mal?
Para usar la biblioteca crypto NodeJS con Typescript (Angular> = 2, por ejemplo), siga estos pasos:
npm install @types/node --save-dev para instalar definiciones de NodeJS En el archivo tsconfig.ts agregue lo siguiente:
"files": [ "./node_modules/@types/node/index.d.ts" ]
Importa la biblioteca donde quieras usarla con import * as crypto from 'crypto';
Debe instalar los archivos de definición para una biblioteca de terceros como crypto . Para que el mecanografiado pueda encontrar el "significado" para él.
Creo que el archivo de definición es:
npm install --save-dev @types/crypto-jsLuego puedes importar el módulo como:
import * as crypto from "crypto"; Si no puede encontrar el archivo de definición para esa biblioteca, puede escribirlo por su cuenta o, como solución alternativa, puede declarar el módulo como any , pero TypeScript no podrá completar automáticamente los métodos.
declare var crypto: any;y usar sus métodos como:
crypto.createHmac..Estoy desarrollando con las últimas versiones de Angular y 'crypto-js' parece funcionar bien.
Instale el paquete y las definiciones:
npm install crypto-js npm install --save @types/crypto-jsÚsalo:
import { SHA256, enc } from "crypto-js"; ... login() { ... const hashedPass = SHA256(this.loginForm.value.password).toString(enc.Hex); ... }