Reactjs 尝试材质ui SelectField组件时出错
我现在正在试用MaterialUI。我是react.js和material ui的新手,不知怎么的,我能处理一些东西,但不能使用SelectField。每当我使用SelectField组件时,我都会得到一个 未捕获的TypeError:无法读取undefinederror的属性“toUpperCase” 我遵循了它的写作方式: 这是我的Reactjs 尝试材质ui SelectField组件时出错,reactjs,material-design,react-jsx,material-ui,Reactjs,Material Design,React Jsx,Material Ui,我现在正在试用MaterialUI。我是react.js和material ui的新手,不知怎么的,我能处理一些东西,但不能使用SelectField。每当我使用SelectField组件时,我都会得到一个 未捕获的TypeError:无法读取undefinederror的属性“toUpperCase” 我遵循了它的写作方式: 这是我的selectField.jsx文件: var React = require('react'); var mui = require('material-ui')
selectField.jsx
文件:
var React = require('react');
var mui = require('material-ui');
var SelectField = mui.SelectField;
var ThemeManager = new mui.Styles.ThemeManager();
var Colors = mui.Styles.Colors;
var StyleResizable = mui.Mixins.StyleResizable;
var menuItems = [
{ payload: '1', text: 'Never' },
{ payload: '2', text: 'Every Night' },
{ payload: '3', text: 'Weeknights' },
{ payload: '4', text: 'Weekends' },
{ payload: '5', text: 'Weekly' },
];
var Main = React.createClass({
getInitialState: function() {
return { selectValue: undefined};
},
childContextTypes: {
muiTheme: React.PropTypes.object
},
getChildContext: function() {
return {
muiTheme: ThemeManager.getCurrentTheme()
};
},
render: function() {
return (
<SelectField
value={this.state.selectValue}
onChange={this._handleSelectValueChange}
floatingLabelText="Select Field"
menuItems={menuItems} />
);
},
_handleSelectValueChange: function(e) {
this.setState({
selectValue: e.target.value
});
}
});
module.exports = Main;
(function () {
var React = require('react');
var injectTapEventPlugin = require('react-tap-event-plugin');
var Main = require('./components/selectField.jsx');
window.React = React;
injectTapEventPlugin();
React.render(<Main />, document.body);
})();
你能同时显示父组件吗?@tobiasandersen是的,添加了父组件。这正是我的工作代码。确保捆绑包中没有不同版本的React。另外,我建议您将模块命名为Main以外的名称(最好接近文件名)。@tobiasandersen谢谢您,在我更新了React和Material ui之后,它工作了。我上周五刚收到,但我想他们在那之后更新了。。。谢谢你的建议。我将在我的代码中反映它。可能只是更新材料ui版本。我在SelectField中没有看到任何方法toUpperCase。