首页 > 解决方案 > React + Material UI + Storybook + Yarn Monorepo - 主题恢复默认

问题描述

语境

我正在尝试使用 Material UI 构建可共享的自定义组件(即自定义库)。我的项目是一个具有以下结构的单声道存储库:

/<root>
  /docs (storybook)
     package.json (1)
  /packages
     /material-ui-<lib>
        package.json (2)
  package.json (3)

docs有以下dependencies(1):

"material-ui-<lib>": "^0.0.1",
"@material-ui/core": "^4.11.3",
"@material-ui/icons": "^4.11.2",
"@material-ui/styles": "^4.11.3",
"react": "^16.13.1",
"react-dom": "^16.13.1"

material-ui-<lib>没有任何dependencies,但以下peerDependenciesdevDependencies(2):

"@material-ui/core": "^4.11.3",
"@material-ui/icons": "^4.11.2",
"@material-ui/styles": "^4.11.3",
"react": "^16.13.1",
"react-dom": "^16.13.1"

<root>与or (3)没有任何dependencies关系。devDependenciesmaterial-uireact

使用的主要技术:

问题

当我在 上应用新的主题提供程序时docs,一切正常,但在我导入的那一刻material-ui-<lib>,主题提供程序被忽略。

尝试

我知道这@material-ui/styles是一个单例,因此需要将其视为唯一的。运行时yarn list @material-ui/styles,我只收到 1 个模块,而不是多个。

感谢您在此问题上的帮助。

标签: webpackmaterial-uistorybookyarn-workspacesthemeprovider

解决方案


推荐阅读