3 回答

TA貢獻1821條經驗 獲得超6個贊
setState
asynchronous
setState
this.state
....changeTitle: function changeTitle (event) { this.setState({ title: event.target.value }); this.validateTitle();},validateTitle: function validateTitle () { if (this.state.title.length === 0) { this.setState({ titleError: "Title can't be blank" }); }},....
title
render()
....changeTitle: function changeTitle (event) { this.setState({ title: event.target.value }, function() { this.validateTitle(); });},validateTitle: function validateTitle () { if (this.state.title.length === 0) { this.setState({ titleError: "Title can't be blank" }); }},....
dispatch
render()
API Call
onState
Child Component
setState callback
....changeTitle: function (event) { this.setState({ title: event.target.value }, () => this.APICallFunction());},APICallFunction: function () { // Call API with the updated value}....

TA貢獻1820條經驗 獲得超2個贊
api
each
changeSearchParams = (params) => { this.setState({ params }, this.performSearch)} performSearch = () => { API.search(this.state.params, (result) => { this.setState({ result }) });}
因此,對于任何狀態更改,都可以在呈現方法主體中執行操作。
非常糟糕的做法render
componentDidMount
添加回答
舉報