我很反应,如果这是基本的,那就很抱歉。
我有这个代码,它不会触发onClick函数:
var ContactItem = React.createClass({
render: function() {
return (
React.createElement('form', {className: 'ContactItem'}, [
React.createElement('input', {type:'text', placeholder: this.props.placeholder}),
React.createElement('button', { onClick: this.onClick }, this.props.action)
]
))
},
onClick: function() { alert('hi') }
});
var ContactForm = React.createClass({
render : function(){
return(
React.createElement('form', {className: 'ContactForm'}, [
React.createElement(ContactItem, {placeholder: '<name>', action: 'send it!', onclick: this.onclick }, null)
])
);
}
});
var element = React.createElement(ContactForm, { action: 'send!'})
ReactDOM.render(element, document.getElementById('react-app'))
但是,如果我只更改了以下行,它会触发(也就是说,我直接实例化ContactItem而不是ContactForm):
var element = React.createElement(ContactItem, { action: 'send!'})
知道为什么会这样吗?谢谢!