【问题标题】:Material-UI, create-react-library, testing-library/react, ThemeProvider and UT can not workMaterial-UI、create-react-library、testing-library/react、ThemeProvider 和 UT 不能工作
【发布时间】:2021-08-09 10:31:45
【问题描述】:

基于Material-UI,从create-react-library开始,随着testing-library/react一起完成很多单元测试用例,问题来了

  1. 如果要通过单元测试用例,请将@Material-UI 设置为依赖项,
    那么它会导致“主题传播问题”,ThemeProvider 不能作为 预计。

  2. 如果将@Material-UI 设置为 peerDependencies,ThemeProvider 工作正常, 但是在运行单元测试用例时,它无法从
    导入组件 @Material-UI。

谁有一些简单的方法来解决这个问题?

【问题讨论】:

    标签: material-ui


    【解决方案1】:
    1. "@material-ui/*" 作为 peerDependencies。
    2. 在根文件夹中添加config-overrides.js。用于 Jest 设置 aliasMap
    const path = require('path');
    const { aliasJest } = require('react-app-rewire-alias');
    
    const aliasMap = {
      '@material-ui': path.join('./', 'example/node_modules/@material-ui')
    };
    
    module.exports = {
      jest: aliasJest(aliasMap)
    };
    

    【讨论】:

      猜你喜欢
      • 2020-02-27
      • 2021-06-02
      • 1970-01-01
      • 2020-03-15
      • 2021-02-10
      • 1970-01-01
      • 2019-07-07
      • 2022-08-06
      • 2021-04-16
      相关资源
      最近更新 更多