【问题标题】:Emotion with Jest: Cannot find module 'react'玩笑的情感:找不到模块“反应”
【发布时间】:2021-10-15 04:43:06
【问题描述】:

我刚刚用create-react-app 设置了@emotion/react。 UI 工作正常,但在运行 jest 时,我收到此错误:

Cannot find module 'react' from '../node_modules/@emotion/react/dist/emotion-react.cjs.dev.js'

我试过了:

  • 确保 react 包在 package.json 中
  • 删除node-modules并重新运行yarn
  • 将文件指令更新为/** @jsxImportSource @emotion/react */
  • 安装@testing-library/react
  • 安装react-test-renderer
  • 安装@emotion/jest

运气不好。知道为什么会发生这种情况吗?

仅从 Emotion 导入会引发此错误,但仅与 JSX 指令和导入语句一起使用。只有一个或另一个不会引发错误。将{ jsx } 更改为{ css } 也会导致问题不再重现。

/** @jsx jsx */
import { jsx } from "@emotion/react";

【问题讨论】:

    标签: reactjs emotion


    【解决方案1】:

    原来依赖项在错误的项目中 - 我们有一个服务器项目和一个子项目,即 React 应用程序。我在顶级项目中有一些 Emotion 依赖项,这使应用程序正常工作,但 Jest 由于某种原因失败了。

    将所有 Emotion 依赖项移动到正确的位置 - Create React App 项目 - 修复了问题。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-05-30
      • 1970-01-01
      • 2021-07-20
      • 1970-01-01
      • 2019-07-27
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多