Expo Router - 导航到另一个屏幕

问题描述 投票:0回答:1

我想将屏幕从菜单屏幕切换到另一个屏幕,但不知道该怎么做

我在我的 Menu.tsx 组件中尝试了这个

<Pressable
          style={styles.totalContainer}
          onPress={() => router.push("../../components/Cart/Cart")}
        >
          <Text style={styles.cartTitle}>Cart | </Text>
          <View style={styles.cartInfo}>
            <Text style={styles.cartItems}>
              {orders.length} {orders.length === 1 ? "item" : "items"}
            </Text>
            <Text style={styles.cartTotal}>
              Rp.
              {orders.reduce((total, order) => total + order.price, 0)}
            </Text>
          </View>
        </Pressable>

但它不起作用,这是我的文件结构 file structure

index.tsx

const index = () => {
  return (
    <View style={{ flex: 1 }}>
      <Greet />
      <Menu />
    </View>
  );
};

请帮助我

reactjs react-native expo
1个回答
0
投票

您似乎不熟悉您的应用程序所获得的路由器结构。

使用

onPress={() => router.push("../../components/Cart/Cart")}

无法工作,因为没有名为

/components/Cart/Cart

的路线

使用

onPress={() => router.push("/Cart/Cart")}

或者您可以在

index.tsx
文件夹中添加
Cart
并执行

onPress={() => router.push("/Cart")}

我假设您使用的是应用程序路由器而不是标准路由

© www.soinside.com 2019 - 2024. All rights reserved.