带有React钩子的react-native-fast-image崩溃onLoadEnd

时间:2019-06-26 09:14:31

标签: reactjs react-native react-hooks

我正在使用const Avatar = (props) => { const [isImageUploaded, setIsImageUploaded] = useState(false); return ( <View style={sizeStyle}> <FastImage source={{ uri: profileImg }} onLoadEnd={() => { setIsImageUploaded(true); }} /> </View> ); }; 中的FastImage组件以及回调中的React useState。

喜欢

Avatar
FlatList内部使用的

setIsImageUploaded(true);组件,当我清除其数据时会崩溃

enter image description here

没有<FastImage source={{ uri: profileImg }} onLoadEnd={() => { // setIsImageUploaded(true); }} /> 就像

一样,崩溃消失了
<ion-card-content>
        <ion-fab vertical="center" horizontal="start" slot="fixed">
          <ion-fab-button>
            <ion-icon name="share"></ion-icon>
          </ion-fab-button>
       </ion-fab>
        <ion-grid>
            <ion-row align-items-start>
                <ion-col>
                    <ion-icon name="eye"></ion-icon>
                </ion-col>
                <ion-col>
                        <ion-badge color="secondary">{{ object.see }}</ion-badge>
                </ion-col>
                <ion-col>
                    <ion-icon name="flame"></ion-icon>
                </ion-col>
                <ion-col>
                    <ion-badge color="danger">{{ object.zharko }}</ion-badge>
                </ion-col>
                <ion-col>
                    <ion-icon name="star"></ion-icon>
                </ion-col>
                <ion-col>
                    <ion-badge color="warning">{{ object.fav }}</ion-badge>
                </ion-col>
            </ion-row>                     
        </ion-grid>
    </ion-card-content>

我是React钩子的新手。关于如何正确处理此类案件的任何想法?

1 个答案:

答案 0 :(得分:0)

我添加了检查回调是否不为null的方法,从而解决了我的问题。

- (void)setOnFastImageLoadEnd:(RCTDirectEventBlock)onFastImageLoadEnd {
    _onFastImageLoadEnd = onFastImageLoadEnd;
    if (self.hasCompleted && _onFastImageLoadEnd != NULL) {
        _onFastImageLoadEnd(@{});
    }
}

在这里我的拉取请求https://github.com/troublediehard/react-native-fast-image/pull/1