Voy a implementar una página de producto donde contenga productos similares cuando toque un componente de producto similar, debería abrir el mismo componente de pantalla y mantener la pantalla de producto anterior en el historial de navegación.
puede alguien ayudarme por favor?
productoSlice.js
const productSlice = createSlice({ name: "product", initialState: { product: null, loading: false, }, reducers: { getProductStart: (state) => { state.loading = true; }, getProductSuccess: (state, { payload }) => { state.product = payload; state.loading = false; }, getProductFailure: (state, { payload }) => { state.loading = false; }, }, }); const { actions, reducer } = productSlice; export const productSelector = (state) => state.product; export default reducer; export function fetchProduct(id){ return dispatch => { ... } }tienda.js
const reducers = combineReducers({ product: productReducer, }); const store = configureStore({ reducer: reducers, }); export default store;ProductScreen.js
function ProductScreen({ navigation, route }) { const dispatch = useDispatch(); const { product, loading } = useSelector(productSelector); useEffect(() => { dispatch(fetchProduct(route.params.id)); }); const openSimilarProduct = (id) => { navigation.push("ProductScreen", { id }); } return ( <View> <Text>{product.name}</Text> <Text>{product.description}</Text> <View> <Pressable onPress={() => openSimilarProduct(1)} > <Text>Product #1</Text> </Pressable> </View> </View> ); } export default ProductScreen;El patrón común en la aplicación de comercio electrónico es obtener información del producto, luego buscar productos similares y enumerarlos en forma de cuadrículas en la parte inferior.
En un nivel alto, debe obtener información del producto y, mediante el uso de metadatos del producto, como el tipo o la categoría, puede obtener otro producto con ese atributo similar. El usuario no necesita presionar el botón para buscar esos productos similares.