react修改state的值

1.使用setState而不是直接等于。
2.
它还有两个参数可以用

        this.setState((prevState,props) => {
            const {xpath_info, list_tab_index, dataDemo, extractType, spider_state} = prevState;
            let select_data = dataDemo[list_tab_index].list_page_xpath;
            const {enu_list_xpath, current_xpath} = select_data;
            xpath_info.enu_list_xpath = enu_list_xpath;
            xpath_info.enu_field[extractType] = current_xpath;
            xpath_info.data_demo = select_data.data_demo;
            spider_state.list_page_xpath.push(xpath_info);
            return {
                xpath_info: xpath_info,
                spider_state: spider_state,
                listView: false}
        });

prevState为旧的state,后面的return里的内容是新的。

原文地址:https://www.cnblogs.com/c-x-a/p/13439686.html