Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/390.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何将状态保存到var/const并停止更新?_Javascript_React Native - Fatal编程技术网

Javascript 如何将状态保存到var/const并停止更新?

Javascript 如何将状态保存到var/const并停止更新?,javascript,react-native,Javascript,React Native,我正在为列表视图开发一个过滤器,这是一种能够对项目进行排序/排序/etc的方法。基本上,我将参数保存在状态,并通过上的一些切换/选择字段进行更新 模式有一个取消和应用按钮。如果在更改过滤器后选择“应用”,则会更新列表视图的内容。但是,如果他们在更改设置后选择取消,他们将恢复到启动过滤器模式之前的状态 所以我要这样做: // Update filterValues state adjustFilterValue(filterSection, newValue) { if ( this.s

我正在为
列表视图
开发一个过滤器,这是一种能够对项目进行排序/排序/etc的方法。基本上,我将参数保存在
状态
,并通过
上的一些切换/选择字段进行更新

模式有一个取消和应用按钮。如果在更改过滤器后选择“应用”,则会更新
列表视图的内容。但是,如果他们在更改设置后选择取消,他们将恢复到启动过滤器模式之前的状态

所以我要这样做:

// Update filterValues state
adjustFilterValue(filterSection, newValue) {

    if ( this.state.hasAdjustedFilters === false ) {

        const filterValues = this.state.filterValues;

        this.setState({
            hasAdjustedFilters: true
        })
    }

    var newFilterValues = defaultFilterValues;

    newFilterValues[filterSection] = newValue;

    this.setState({
        filterValues: newFilterValues
    })
}
然而,每当我调整
这个.state.filterValues
-
新的filterValues
get时,它也会更新


如何从状态保存和隔离对象

您可以使用生命周期挂钩存储初始状态:

componentDidMount() {
  this._initialState = this.state;
}
稍后,在revert的情况下,只需
setState(this.\u initialState)