我有一个使用Material UI及其主题提供程序(使用JSS)的应用程序。
我现在合并了fullcalendar-react,它实际上不是一个完整的React库-只是原始的fullcalendar代码的一个薄的React组件包装。
也就是说,我无法访问诸如渲染道具之类的东西来控制其元素样式。
但是,它确实允许您通过渲染元素时调用的回调直接访问DOM元素(例如eventRender方法)。
现在,我要做的是使完整日历组件(例如,按钮)具有与我的应用程序其余部分相同的外观。
一种方法是,通过查看正在使用的类名称并相应地实现样式,我可以手动覆盖所有样式。
或者- 我可以实现Bootstrap主题-如其文档中所建议。
但是这些解决方案中的任何一个的问题在于:
- 会很多工作
- 如果我对MUI主题进行了更改,却忘记了更新日历主题,则它们将出现不同的同步问题。
我想做的是:
- 神奇地将MUI主题转换为Bootstrap主题。
- 或在MUI类名称和日历类名称之间创建映射,如下所示:
.fc-button = .MuiButtonBase-root.MuiButton-root.MuiButton-contained
.fc-button-primary= .MuiButton-containedPrimary
我不介意按摩选择器等使其工作(例如,MUI按钮有两个内部范围,而完整日历只有一个)。这主要是关于更改主题的时间-不想在两个地方都进行更改。
@extend
我想到的是使用像Sass这样的语法。我可以很容易地用Sass创建全日历CSS-但是Sass如何访问MuiTheme?
也许我可以采取相反的方法-告诉MUI'嘿,这些类名的样式应类似于这些MUI类'。
关于如何解决此问题的任何具体建议?
text-decoration
属性添加到头盔中。