Skip to content

setOnFastImageError #1035

@NguyenHoangMinhkkkk

Description

@NguyenHoangMinhkkkk

My project using these version:
"react-native": "0.68.7"
"react-native-fast-image": "^8.6.3"

Code:

import DefaultImage from "@images/DefaultImage.png"
...
const [isErrorImage, setErrorImage] = React.useState(false);
...
<>
  {isErrorImage ? <Text>{"Image Error"}</Text> : null}
  <FastImage
    resizeMode="cover"
    style={{
      width: 200, height: 200,   borderRadius: 8, backgroundColor: "gray"
    }}
    onError={() => {
      InteractionManager.runAfterInteractions(() => {
        setErrorImage(true);
      });
    }}
    defaultSource={DefaultImage}
    source={{ uri: 'https://something...' }}
  />
</>

Everytime Image load failed, => Crash and get this error 👇
Screenshot 2024-03-22 at 14 49 40

After some searching on issues, this issue give me a idea.

And i tried this code 👇, the Crash gone away and project working fine.

- (void) setOnFastImageError: (RCTDirectEventBlock)onFastImageError {
    _onFastImageError = onFastImageError;

    if (self.hasErrored && _onFastImageError) {   // insead of if (self.hasErrored) {
        _onFastImageError(@{});
    }
}

And, finally, what should i do with this issue ? is the fix code above the right way to do (Should i use patch-package?) or i have to do something else ??

Metadata

Metadata

Assignees

No one assigned

    Labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions