3 回答
TA貢獻1821條經驗 獲得超6個贊
setStateasynchronoussetStatethis.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" });
}},....titlerender()
....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" });
}},....dispatchrender()
API Call
onStateChild Component
setState callback
....changeTitle: function (event) {
this.setState({ title: event.target.value }, () => this.APICallFunction());},APICallFunction: function () {
// Call API with the updated value}....TA貢獻1820條經驗 獲得超3個贊
apieach
changeSearchParams = (params) => {
this.setState({ params }, this.performSearch)} performSearch = () => {
API.search(this.state.params, (result) => {
this.setState({ result })
});}
因此,對于任何狀態更改,都可以在呈現方法主體中執行操作。
非常糟糕的做法rendercomponentDidMount
添加回答
舉報
