You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

React项目使用CryptoJS报CryptoJS is undefined错误如何解决?

React项目引入CryptoJS报错undefined解决方案

问题场景

在ReactJS项目开发中调用CryptoJS库的AES方法实现加密功能,触发加密操作时收到如下报错:
TypeError: crypto_js__WEBPACK_IMPORTED_MODULE_1__.CryptoJS is undefined
报错触发位置为调用CryptoJS.AES.encrypt的代码行,原有实现代码如下:

import React, {useState} from 'react';
// 错误的导入写法
import {CryptoJS} from 'crypto-js';
export function Register(){
    var body = /* 存储注册信息的JSON对象 */
    var encyMssg = CryptoJS.AES.encrypt(JSON.stringify(body), "key").toString();

    return(/* HTML组件 */);
}

问题原因

crypto-js 模块采用默认导出的方式暴露完整的CryptoJS对象,不需要使用具名导入的大括号包裹导入对象。带大括号的写法会尝试导入模块下名为CryptoJS的具名导出属性,而该属性不存在,因此会报undefined错误。

解决方法

修改import导入语句,去掉大括号使用默认导入即可:

import CryptoJS from 'crypto-js';

内容的提问来源于stack exchange,提问作者P2000Gua

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.29 04:45:04