是否反應原生緩存遠程圖像?反應原生緩存遠程圖像?
我有一個應用程序,可以遠程下載幾十個圖像。這些圖像似乎緩存在我的應用程序中,但是,我不確定是否默認情況下是這樣做的操作系統,或者如果React Native緩存它們。
如果它是React Native,有什麼方法可以定製它們被緩存多久?或者遠程服務器是否定義了這個?
是否反應原生緩存遠程圖像?反應原生緩存遠程圖像?
我有一個應用程序,可以遠程下載幾十個圖像。這些圖像似乎緩存在我的應用程序中,但是,我不確定是否默認情況下是這樣做的操作系統,或者如果React Native緩存它們。
如果它是React Native,有什麼方法可以定製它們被緩存多久?或者遠程服務器是否定義了這個?
這不是直接的ReactNative,它只是fetch
緩存工作。但是,fetch
行爲也依賴於服務器設置(大部分時間標記爲cache
)。有關獲取API的更多信息(有關如何在請求標頭中定義cache
的好例子)here。
您可能會對我的高階組件模塊感興趣,該模塊會將與性能相關的圖像緩存和「永久緩存」功能添加到本機組件<圖像0。它是跨平臺的,而對於<圖片>的標準緩存功能在android和ios上是不同的,除了沒有記錄的行爲外,它似乎也發生了很大的變化。
鉈; DR代碼示例:
import imageCacheHoc from 'react-native-image-cache-hoc';
const CacheableImage = imageCacheHoc(Image);
export default class App extends Component<{}> {
render() {
return (
<View style={styles.container}>
<Text style={styles.welcome}>Welcome to React Native!</Text>
<CacheableImage style={styles.image} source={{uri: 'https://i.redd.it/rc29s4bz61uz.png'}} />
<CacheableImage style={styles.image} source={{uri: 'https://i.redd.it/hhhim0kc5swz.jpg'}} permanent={true} />
</View>
);
}
}
是否有任何方式來定製他們是如何長在上面的代碼示例緩存
第一圖像將被緩存,直到總本地緩存增長超過15 MB(默認情況下),則緩存圖像將首先被刪除,直到總緩存低於15 MB ñ。
第二張圖像將永久存儲到本地磁盤。人們使用這個替代品來替代您的應用發佈靜態圖片文件。