From 2dee48564ee0be83d1684aa5c039a87a7489d887 Mon Sep 17 00:00:00 2001 From: tonyfages Date: Sun, 31 Mar 2024 19:40:43 +0200 Subject: [PATCH] tp8 --- JokesApp/App.tsx | 1 + JokesApp/components/DetailJoke.tsx | 8 ++++++-- JokesApp/screens/JokeDetailScreen.tsx | 11 ++++++----- JokesApp/screens/ListFavoriteJokeScreen.tsx | 13 ++----------- JokesApp/screens/ListJokeScreen.tsx | 2 +- 5 files changed, 16 insertions(+), 19 deletions(-) diff --git a/JokesApp/App.tsx b/JokesApp/App.tsx index b7f5ad1..82c2ba9 100644 --- a/JokesApp/App.tsx +++ b/JokesApp/App.tsx @@ -9,6 +9,7 @@ import AsyncStorage from "@react-native-async-storage/async-storage"; export default function App() { + //AsyncStorage.clear() return ( diff --git a/JokesApp/components/DetailJoke.tsx b/JokesApp/components/DetailJoke.tsx index 54b9055..31c1b57 100644 --- a/JokesApp/components/DetailJoke.tsx +++ b/JokesApp/components/DetailJoke.tsx @@ -13,10 +13,12 @@ type DetailJokeProps = { export function DetailJoke(props: DetailJokeProps) { - const [isActivated, setIsActivated] = useState(false); - const [isActivated2, setIsActivated2] = useState(false); const favoriteJokes = useAppSelector(state => state.customReducer.favoriteJokes) as [CustomJoke, SampleJoke]; const dispatch = useAppDispatch(); + const isFav : boolean = favoriteJokes.some(it => it.id == props.item.id ) + console.log("Is fav"+isFav) + const [isActivated, setIsActivated] = useState(isFav); + const [isActivated2, setIsActivated2] = useState(false); function toggleActivation() { setIsActivated(!isActivated); @@ -31,6 +33,8 @@ export function DetailJoke(props: DetailJokeProps) { } + + function toggleActivation2() { setIsActivated2(!isActivated2); } diff --git a/JokesApp/screens/JokeDetailScreen.tsx b/JokesApp/screens/JokeDetailScreen.tsx index 60b3d46..f2e2f76 100644 --- a/JokesApp/screens/JokeDetailScreen.tsx +++ b/JokesApp/screens/JokeDetailScreen.tsx @@ -14,16 +14,17 @@ export default function JokeDetailScreen({route}) { const isFocused = useIsFocused(); const dispatch = useDispatch(); const jokeId = route.params.joke; - const state = route.params.state; - console.log(state); + const isFavoris = route.params.isFavoris - const DataGen = state ? useSelector((state: any) => state.customReducer.completCustomJoke) : useSelector((state: any) => state.sampleReducer.completJoke); + + + const DataGen = typeof jokeId === "string" ? useSelector((state: any) => state.customReducer.completCustomJoke) : useSelector((state: any) => state.sampleReducer.completJoke); // const DataGen = useSelector((state: any) => state.sampleReducer.completJoke); useEffect(() => { const getDetails = async () => { // @ts-ignore - { state ? await dispatch(getJokesCustomsById(jokeId)) : await dispatch(getCompletJokes(jokeId));} + { typeof jokeId === "string" ? await dispatch(getJokesCustomsById(jokeId)) : await dispatch(getCompletJokes(jokeId));} }; getDetails(); @@ -38,7 +39,7 @@ export default function JokeDetailScreen({route}) { return ( - {state ? + {typeof jokeId === "string" ? : null} diff --git a/JokesApp/screens/ListFavoriteJokeScreen.tsx b/JokesApp/screens/ListFavoriteJokeScreen.tsx index 5cbc6a3..c015828 100644 --- a/JokesApp/screens/ListFavoriteJokeScreen.tsx +++ b/JokesApp/screens/ListFavoriteJokeScreen.tsx @@ -22,21 +22,12 @@ export function ListFavoriteJokeScreen({route, navigation}){ }, []); - let fav = true; - if (favoriteJokes.length <= 0) { - fav = false; - } - else { - fav = true; - } - console.log(fav); - console.log(favoriteJokes.length); - //console.log(favoriteJokes[1].id); + const styles = themeSettings(); return ( - { fav ? ( + { favoriteJokes.length ? ( ( diff --git a/JokesApp/screens/ListJokeScreen.tsx b/JokesApp/screens/ListJokeScreen.tsx index cc4e855..2b4a2d3 100644 --- a/JokesApp/screens/ListJokeScreen.tsx +++ b/JokesApp/screens/ListJokeScreen.tsx @@ -58,7 +58,7 @@ export function ListJokeScreen({route, navigation}) { ( - navigation.navigate("JokeDetail", {"joke" : item.id, "state" : isActivated2})}> + navigation.navigate("JokeDetail", {"joke" : item.id})}> )}