渲染时出现反应错误:无法读取未定义的属性

时间:2016-03-02 19:14:29

标签: javascript reactjs

所以我在反应中得到了这段代码

getDocuments: function(){
if(this.state.documents.length == 0){
  return(<div>Vous navez aucument document pour le moment</div>);
} else {
  var documentsData = this.state.documents.map(function(doc) {
    return (
      <Row md={12} key={doc.document_id}>
        <Col md={3} xs={4}>
          <label>Titre du document : {doc.title}</label>
        </Col>
        <Col md={3} xs={4}>
          <label>Ajouté le : {moment(doc.upload_date).format("L")}</label>
          <Form.Button type='button' onClick={  this.deleteDocument(doc.document_id)} className="btn btn-danger btn-sm">X</Form.Button>
        </Col>
      </Row>
    );
  });
  return documentsData;

谁应该呈现HTML,显示存储在this.state.documents地图中的一些信息。在我onClick上添加Form.Button事件之前,它的效果非常好。

这是我的deleteDocument函数:

deleteDocument:function(doc_id){
    request.post('/documents/delete/'+this.props.requestID+'/'+doc_id).set('Accept', 'application/json').end(function(err, res) {
      if (res.body.result) {
        window.location.href = '/request/edit';
      } else {
        this.setState({'cannotUpdateRequest':true});
      }
    }.bind(this));
  },

这应该只是在预定义的路由上发出一个请求,它将处理删除文档的后端逻辑,但是控制台正在给我这个错误:Uncaught TypeError: Cannot read property 'deleteDocument' of undefined。 任何想法有什么不对?

0 个答案:

没有答案