相关疑难解决方法(0)

React Props未定义

我无法理解为什么我的props.updateBuilding无效.

当prop在render方法中时,以下工作

class Buildings extends Component {
  constructor(props) {
      super(props);
  }

  componentWillMount() {
    this.props.fetchBuildings();
  }

  renderBuildings(building) {
    return (
      <div>
          <p> {building.name}</p>
      </div>
    );
  }


  render() {
    return (
      <div> 
        {this.props.buildings.map(this.renderBuildings)}
        <button type="button" className="btn btn-success" onClick={this.props.updateBuilding.bind(this, 1)}>Edit</button>
      </div>
    );
  }
}

function mapStateToProps(state) {
  return { buildings: state.buildings.all };
}
function mapDispatchToProps(dispatch){
  return bindActionCreators({ fetchBuildings, updateBuilding}, dispatch);
}
Run Code Online (Sandbox Code Playgroud)

但是当我this.props.updateBuilding按照下面的方式添加renderBuildings方法时......

  renderBuildings(building) {
    return (
      <div>
          <p> {building.name}</p>
          <button type="button" className="btn btn-success" onClick={this.props.updateBuilding.bind(this, building.id)}>Edit</button>
      </div>
    );
  }
Run Code Online (Sandbox Code Playgroud)

我收到错误:

Cannot read …
Run Code Online (Sandbox Code Playgroud)

undefined reactjs

9
推荐指数
3
解决办法
4万
查看次数

标签 统计

reactjs ×1

undefined ×1