2014-03-31 36 views
0

我很安静,新的React,我无法弄清楚如何操作DOM。
我有一组复选框,我有一个删除按钮,我想删除点击删除按钮时选中的元素。
这里的代码片段,我使用:
React.js得到检查输入

... 
deleteMessage: function(event) { 
    this.refs.select_message.getDOMNode(); // I get only the last element 
}, 
... 


... 
render: function() { 
    var Messages = this.props.messages; 
    return (
     <div> 
      <button onClick={this.deleteMessage}>Delete</button> 

     {Messages.map(function(message) { 
       return (
        <div> 
        <input type='checkbox' className='select_message' ref='select_message'/> 
        </div> 
       ); 
     })} 
     </div> 
    );  

我做正确的方式?

回答

4

你应该做的是,在你的deleteMessage中,调用你从父对象传过来的处理函数。这又反过来从外部修改消息数组。然后新的消息数组将作为道具传入。您需要的主要洞察是道具不仅是渲染所传递的数据,还包括在组件内部发生用户交互时要调用的函数。