Reactjs React ReferenceError:类型为“的未知节点”;JSXSpreadChild“;“带构造函数”;节点";

Reactjs React ReferenceError:类型为“的未知节点”;JSXSpreadChild“;“带构造函数”;节点";,reactjs,Reactjs,我无法理解以下组件中的问题是什么,以及为什么会导致错误(错误出现在我试图通过webpack制作js文件时)。在代码中添加{…This.state.options}时出现此问题 组件 import React from 'react'; var BoxCountComponent = React.createClass({ getInitialState: function () { return { options:[] } }, componentDidMo

我无法理解以下组件中的问题是什么,以及为什么会导致错误(错误出现在我试图通过webpack制作js文件时)。在代码中添加
{…This.state.options}
时出现此问题

组件

import React from 'react';

var BoxCountComponent = React.createClass({

getInitialState: function () {
    return {
        options:[]
    }
},
componentDidMount: function () {
    for (let i=0; i<10; i++){
        this.state.options.push(
            <option key={i} value={i+1}>{i+1}</option>
        )
    }
    this.forceUpdate()
},
render: function () {
    return (
        <select className="form-control" name="boxCount" id="boxCount">{...this.state.options}</select>
    )
}
})
你有两个问题:

1) 你正在推(改变)你的状态对象。而是使用
this.setState
,它将自动重新渲染组件。这基本上就是React背后的全部想法。初始化某些状态,然后使用
setState
更改它

componentDidMount: function () {
    let options = []
    for (let i=0; i<10; i++){
        options.push(
            <option key={i} value={i+1}>{i+1}</option>
        )
    }
    this.setState({ options })
},
componentDidMount: function () {
    let options = []
    for (let i=0; i<10; i++){
        options.push(
            <option key={i} value={i+1}>{i+1}</option>
        )
    }
    this.setState({ options })
},
render() {
  <select className="form-control" name="boxCount" id="boxCount">
    {this.state.options}
  </select>
}