我已经阅读了几篇关于何时使用和何时不使用的文章,useCallback但useMemo我大多看到的是非常contrived代码。我在查看我公司的代码时发现有人这样做了:
const takePhoto = useCallback(() => {
launchCamera({ mediaType: "photo", cameraType: "front" }, onPickImage);
}, []);
const pickPhotoFromLibrary = async () => {
launchImageLibrary({ mediaType: "photo" }, onPickImage);
}
const onUploadPress = useCallback(() => {
Alert.alert(
"Upload Photo",
"From where would you like to take your photo?",
[
{ text: "Camera", onPress: () => takePhoto() },
{ text: "Library", onPress: () => pickPhotoFromLibrary() },
]
);
}, [pickPhotoFromLibrary, takePhoto]);
Run Code Online (Sandbox Code Playgroud)
这是 onUploadPress 的调用方式:
<TouchableOpacity
style={styles.retakeButton} …Run Code Online (Sandbox Code Playgroud)