在 React 中更新状态 属性 的有效方法?

valid way to update a state property in react?

对反应很陌生,所以我想检查一下这是否正确。我没有收到错误,只是为了确保我以正确的方式执行此操作。

state = {
        results: [],
    };

此方法在到达时更新状态:

searchRequestHandler = () => {
        const filterCopy = this.state.filter;
        const dogsCharacteristicsData = dataFromServerModelerUponSearch(
            this.props.dogs
        );

        const resultsFromFilter = filterDataResults(
            filterCopy,
            dogsCharacteristicsData
        );

        this.setState({ formIsOpen: false, results: [...resultsFromFilter] });
    };

我也很想知道如何通过重组来做到这一点。谢谢!

以下是控制台中 resultsFromFilter 变量的数据:

您在更新结果状态时做对了。 还有其他方法可以像这样更新结果数组:

let result =  resultsFromFilter;
this.setState({ formIsOpen: false, results: result});

或者

this.setState({ formIsOpen: false, results:  resultsFromFilter  });