Материал интерфейса - muiTheme.prefix не является проблемой функции
Недавно я перешел на Google Material UI (Material UI v0.15.0-beta.1) с v0.14.4, из-за новейших реактивов v15.0.1, а также обновил оболочку Formy-Material-UI и Formy-Reaction для проверки формы.
Это большая архитектура кода, извинения не могут присоединить фрагмент кода, в любом случае я получаю сообщение об ошибке, которое говорит muiTheme.prefix is not a function
,
Хотя я следовал рекомендациям, предоставленным в документе журнала изменений пользовательского интерфейса по адресу https://github.com/callemall/material-ui/blob/master/CHANGELOG.md
Надеюсь получить помощь, дайте мне знать, если что-нибудь понадобится, чтобы лучше объяснить проблему.
2 ответа
Получил проблему, я пропустил контекст темы lightBaseTheme
быть переданным в методе getMuiTheme, как указано ниже.
getChildContext() {
return {muiTheme: getMuiTheme(lightBaseTheme)};
}
Я думаю, что вы ничего не сделали с этим серьезным изменением:
На данный момент вам нужно будет предоставить тему в контексте, см.: http://www.material-ui.com/
Таким образом, материал-интерфейс может сломаться, если вы не укажете тему. Вы могли бы, вероятно, обернуть все ваше приложение в MuiThemeProvider и вернуть его к работе.
Вам нужно что-то вроде:
...
import MuiThemeProvider from "material-ui/styles/MuiThemeProvider"
import getMuiTheme from "material-ui/styles/getMuiTheme"
// import the colors wanted to customize your theme here, if you want to
import { orange500 } from "material-ui/styles/colors"
...
// customize your theme here
const muiTheme = getMuiTheme({
palette: {
accent1Color: orange500
}
})
...
class MyApp extends Component {
render() {
return (
<MuiThemeProvider muiTheme={muiTheme}>
<div>
<Header />
<Body />
<Footer />
</div>
</MuiThemeProvider>
)
}
}
Следует обратить внимание на то, что MuiThemeProvider ожидает только одного дочернего элемента, поэтому нельзя избегать инкапсуляции div; Вы можете, конечно, создать еще один компонент AppContainer, если вы хотите, чтобы все было чище, но вы поняли идею.