0

在类组件内部,我有一个panResponder并且在onPanResponderRelease事件期间,我想更新类组件的状态。但是,在调用 setState 后,状态永远不会更新。

type ExampleState = {
    duration: number
};

class Example extends Component<ExampleProps, ExampleState> {
    constructor(props: ExampleProps) {
        super(props);
        this.state = {
            duration: 0
        };

        this.setupPanResponder();
    }

    setupPanResponder = (): void => {
        this.panResponder = PanResponder.create({
            onPanResponderTerminationRequest: () => false,
            onStartShouldSetPanResponder: () => true,
            onPanResponderGrant: () => {
                // grant code here
            },
            onPanResponderMove: (event, gestureState) => {
                // move code here
            },
            onPanResponderRelease: () => {
                this.setState({ duration: 0 }); // does not seem to actually be setting the state
            }
        });
    };
}

为什么 setState 不起作用?如果我在另一个事件中使用 setState,比如onPanResponderMove,它似乎确实有效,这对我来说很奇怪。

4

0 回答 0