React功能组件未在道具更改时渲染

问题描述 投票:0回答:1

我正在使用本机反应进行开发,并且正在使用功能组件进行开发。但我面临着问题。当我从函数获取回调并将其保存为状态时,我希望该组件将再次呈现。但组件不会再次呈现。请检查并在[

中提供详细信息
 callBackfn = (callback) => {
        this.setState({ infomationtosend: callback });                    
    }

这工作正常,好像我将在控制台上打印它以获得状态正确的输出。但是随着它再次在ComponentTreat中运行,它不会再次呈现组件。我也尝试过useEffect但不能正常工作。谁能为我提供解决方案。

<Swiper
   from={0}
   >
    <ComponentTreat
           detailsend={this.state.infomationtosend}
           appName={"sentText"}
           CallBack={(callback) => this.callBackfn(callback)}
      />
 </Swiper>

swiper duw到swiper组件的问题不刷新。

react-native react-native-ios react-functional-component
1个回答
0
投票

功能组件状态更改如下:

// Inside parent component
const [info, setInfo] = useState(initalValue);

然后在回调中使用它,我们使用闭包来访问它。

function callback(newValue) {
  setInfo(newValue);
}

并将其相应地传递给儿童道具。

此外,如果您使用大量回调,请签出useCallback()

© www.soinside.com 2019 - 2024. All rights reserved.