reactjs - Material-UI ThemeProvider 没有将主题传递给组件

标签 reactjs material-ui

我在我的 App.js 中创建了一个主题,它覆盖了主要颜色和次要颜色。我有 ThemeProvider 包装 Home 组件。覆盖的值未显示在 Home 组件中。我做错了什么?

App.js

import React from 'react'
import { ThemeProvider, createMuiTheme } from '@material-ui/core/styles'

import purple from '@material-ui/core/colors/purple'
import green from '@material-ui/core/colors/green'

import Home from './components/Home'

const theme = createMuiTheme({
  overrides: {
    pallete: {
      primary: {
        main: purple[500]
      },
      secondary: {
        main: green[500]
      }
    }
  }
})


const App = () => {
  return (
    <ThemeProvider theme={theme}>
      <Home />
    </ThemeProvider>
  )
}
export default App

首页.js

import React from 'react'
import { useTheme } from '@material-ui/core/styles'
import { Container, Grid, AppBar, Toolbar, CssBaseline } from '@material-ui/core'

const Home = () => {
    const theme = useTheme()

    return (
        <Container max="lg">
            <CssBaseline />
            <Grid container>
                <Grid item xs={12}>
                    <AppBar color="primary">
                        <Toolbar>
                            Hello World
                        </Toolbar>
                    </AppBar>
                </Grid>
            </Grid >
        </Container >
    )
}
export default Home

I would think that in my AppBar the color="primary" should show up with the overridden primary color. But it's not happening.

最佳答案

你有一些拼写错误(比如 pallete 而不是 palette,冗余的 overrides prop 等)。

这里是working example .

关于reactjs - Material-UI ThemeProvider 没有将主题传递给组件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62725780/

相关文章:

javascript - 对于每次点击汽车,我需要在浏览器中显示汽车名称

node.js - react 应用程序的状态与我数据库中的状态不一致?

javascript - Material UI,如何覆盖嵌套MUI组件的样式?

javascript - 如何更改出现验证错误的选项卡的选项卡指示器颜色?

reactjs - 用于与父节点通信的react.js自定义事件

reactjs - 在 React 中递归克隆和修改子组件 - 包括其他组件的子组件

node.js - npm 开始显示错误,代码为 npm ERR!代码 生命周期

reactjs - 嵌套在 redux-form Field 标签中时,无法模拟 enzyme 测试单击 Material ui 复选框

reactjs - 添加用于关闭 Material-UI 抽屉的取消图标

reactjs - 无法使用 date-fns (AdapterDateFns) Localizationprovider 在 MUI X TimePicker 中正确编辑时间