1*bf6e62f2S猫头猫import AsyncStorage from '@react-native-async-storage/async-storage'; 2*bf6e62f2S猫头猫 3*bf6e62f2S猫头猫export async function getHistory() { 4*bf6e62f2S猫头猫 let searchList = []; 5*bf6e62f2S猫头猫 try { 6*bf6e62f2S猫头猫 const _ = await AsyncStorage.getItem('history-search'); 7*bf6e62f2S猫头猫 if (!_) { 8*bf6e62f2S猫头猫 throw new Error(); 9*bf6e62f2S猫头猫 } 10*bf6e62f2S猫头猫 searchList = JSON.parse(_); 11*bf6e62f2S猫头猫 } catch { 12*bf6e62f2S猫头猫 searchList = []; 13*bf6e62f2S猫头猫 } 14*bf6e62f2S猫头猫 return searchList; 15*bf6e62f2S猫头猫} 16*bf6e62f2S猫头猫 17*bf6e62f2S猫头猫export async function addHistory(query: string) { 18*bf6e62f2S猫头猫 let searchList = await getHistory(); 19*bf6e62f2S猫头猫 searchList = [query].concat(searchList.filter((_: string) => _ !== query)); 20*bf6e62f2S猫头猫 await AsyncStorage.setItem('history-search', JSON.stringify(searchList)); 21*bf6e62f2S猫头猫} 22*bf6e62f2S猫头猫 23*bf6e62f2S猫头猫export async function removeHistory(query: string) { 24*bf6e62f2S猫头猫 let searchList = await getHistory(); 25*bf6e62f2S猫头猫 searchList = searchList.filter((_: string) => _ !== query); 26*bf6e62f2S猫头猫 await AsyncStorage.setItem('history-search', JSON.stringify(searchList)); 27*bf6e62f2S猫头猫} 28