使用setState为reactJS中的对象设置单个属性

时间:2018-03-13 04:56:21

标签: javascript reactjs object setstate

我正在尝试使用setState更新对象人员的属性“name”。但它似乎没有用。 我通过用户输入获得'newName'。

我在这里缺少什么?

this.setState({ person: { name: newName } });

1 个答案:

答案 0 :(得分:0)



class TestJS extends React.Component {
    constructor(props) {
        super(props);
        this.state = {
            person : {name : "DefaultName", age : 56}
        }
    }

    componentDidMount(){
        this.setState(state => ({ person: Object.assign({}, state.person, { name: "sdsds" }) }));
    }

    render() {
        return(
            <div id="root">
                {this.state.person.name}
                {this.state.person.age}
                <p>Hello world</p>
            </div>

        );
    }
}

export default TestJS;
&#13;
&#13;
&#13;