反应格式问题

React formatting issue

本文关键字:问题 格式      更新时间:2023-09-26

我有以下内容(我没有写):

   render: function () {
        if(this.state.loading){
            return <div><span><i className="fa fa-spinner fa-spin"></i> Loading...</span></div>
        }else if(typeof this.state.listing.id == 'undefined' || !this.state.component){
            return false;
        }
        return (
            React.createElement(eval(this.state.component), {
                listing: this.state.listing,
                onClose: this.handleClose,
                options: this.state.options
            })
        );
    }

这是在React.creatClass内部。 我是外国反应,但只需要围绕这部分的包装div:

                React.createElement(eval(this.state.component), {
                    listing: this.state.listing,
                    onClose: this.handleClose,
                    options: this.state.options
                })

如何在该部分周围添加一个简单的div,以便我可以正确设置此组件的样式?

只需将其包装在另一个 JSX 标签中即可。最好摆脱杂散的React.createElement调用并只使用 JSX。

render: function () {
  if(this.state.loading){
    return (
      <div>
        <span>
          <i className="fa fa-spinner fa-spin"></i>
          Loading...
        </span>
      </div>
    );
  } else if(typeof this.state.listing.id == 'undefined' || !this.state.component) {
    return false;
  }
  return (
    <div>
      {React.createElement(eval(this.state.component), {
        listing: this.state.listing,
        onClose: this.handleClose,
        options: this.state.options})
      )}
    </div>
  );
}

这里真正的问题是,eval到底在做什么?