【问题标题】:Material ui date time picker themeMaterial ui 日期时间选择器主题
【发布时间】:2020-08-22 22:01:37
【问题描述】:

Material ui 日期选择器使用默认主题,而不是使用我的自定义主题。如何更正此问题并使选择器使用我的自定义主题而不是默认主题。

代码沙盒code

【问题讨论】:

  • 当您的问题中没有包含任何代码时,任何人都很难帮助更正您的代码。请包含code sandbox 重现您的问题并将相同的代码放入您的问题中。

标签: reactjs material-ui


【解决方案1】:

请在问题中输入您尝试过的任何内容。 无论如何,您可以在 index.js 文件中定义自己的主题。

const theme = createMuiTheme({
    palette: {
        primary: {
            main: "#008080"
        },
        secondary: {
            main: '#4caf50',
        },

    }
})

ReactDOM.render(
        <MuiThemeProvider theme={theme}>
            <App />
        </MuiThemeProvider>,
    document.getElementById('root')
);

它现在会选择你在这里的主题。

这是按我说的那样工作的确切代码。

<MuiPickersUtilsProvider
  libInstance={moment}
  utils={MomentUtils}>
  <KeyboardDateTimePicker
     autoOk
     fullWidth
     size="small"
     animateYearScrolling
     inputVariant="outlined"
     value={start_time}
     keyboardIcon={<DateRangeIcon color="secondary" />}
     placeholder={showStartTime ? "" : "Test not scheduled"}
     onChange={handleDateChange} />
</MuiPickersUtilsProvider>

【讨论】:

  • 其实我也做过。当我使用材质 ui 选择器时出现问题。我不确定,但我认为可能正在使用 Muipickersutilsprovider 用默认主题覆盖我的自定义主题。因为只要我插入一个日期选择器,我的所有主题颜色都会重置为默认主题颜色。
  • 我在我的两个项目中使用了 MuiPickers,但它的行为并非如此,它是从我在主库中提供的任何内容中挑选颜色:{ main: "here"}。我已经添加了我的代码。你能把这段代码放在代码沙箱里分享一下吗?
  • 感谢 Sahil 抽出时间来解决我的问题。我尝试更新依赖项,现在它使用自定义主题。但是现在出现了另一个问题,即选择器对话框出现时没有任何样式。 PFA 此代码的沙箱链接:(codesandbox.io/s/date-picker-2y6gq)
  • @Sumit you got me there 我正在尝试调试,最后发现您的主题正在改变日历组件样式。您已更改主题中的 MuiInput、MuiButton 样式,这正在更改日历组件中的输入和按钮
  • 哦,那我现在该怎么办,因为我在很多其他组件中都使用了自定义主题。
猜你喜欢
  • 1970-01-01
  • 2018-10-23
  • 1970-01-01
  • 2015-08-04
  • 2018-05-09
  • 2017-10-26
  • 1970-01-01
  • 2019-07-15
  • 2018-04-10
相关资源
最近更新 更多