Non Angular : Uncaught (in promise) TypeError: Cannot read property 'CryptoJS' of undefined

Non Angular : Uncaught (in promise) TypeError: Cannot read property 'CryptoJS' of undefined

出于显而易见的原因,我正在尝试使用 crypto-js (https://www.npmjs.com/package/crypto-js)。 我的是非 Angular、LitElement、Typescript、Web 组件应用程序。 虽然 运行 在本地出现以下错误“Uncaught (in promise) TypeError: Cannot read 属性 'CryptoJS' of undefined”。

相同的代码

import * as CryptoJS from 'crypto-js';
export class TestClass {
public encrypt() {
  console.log(CryptoJS.AES.encrypt('key', 'somevalue').toString());
 }
}

如果我调试 index.js 文件 /nodemodules/crypto-js/index.js root 未定义

; (function (root, factory, undef) {
// Some code
    // Global (browser)
root.CryptoJS = factory(root.CryptoJS); // getting root as undefined

不确定,缺少的部分是什么。相同的代码在 Angular 项目中工作正常。

任何难以在打字稿中导入 crypto-js 的人(因为它是 UMD 格式),可以使用 crypto-es 包。它以 ES 格式提供。

https://www.npmjs.com/package/crypto-es