我正在尝试构建一个动态div,它包含基于状态的不同组件。我的自定义组件是Active,Stable和Form。
render: function () {
var components = [];
if (this.state.isActive) {
components.push(React.DOM.Active));
}
if (this.state.isStable) {
components.push(React.DOM.Stable({}));
}
if (this.state.visible) {
components.push(React.DOM.Form({}));
}
return React.DOM.div({}, components);
}
Form组件是一个具有
的简单表单handleSubmit(e) {
e.preventDefault();
console.log('Submitted');
}
render: function() {
return React.DOM.form({onSubmit: this.handleSubmit}, [React.DOM.button({},'Submit')]);
}
永远不会调用handleSubmit方法。但是,如果我将代码更改为:
render: function () {
var components = [];
components.push(React.DOM.Form({}));
return React.DOM.div({}, components);
}
有谁知道问题可能来自哪里?
答案 0 :(得分:1)
handleSubmit方法未正确写入。它应该是
handleSubmit: function(e) {
e.preventDefault();
console.log('Submitted');
},
//(dont forget the comma to separate methods :)
答案 1 :(得分:0)
{onSubmit: this.handleSubmit}
来电时需要React.DOM.form
。