Обмен технологиями

Vuetify3 Nuxt3: перейти к подробностям

2024-07-12

한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina

В Nuxt 3 используйтеv-data-table компонент, мы хотим перейти на страницу при нажатии на определенную строку или ячейку.Вы можете прослушать событие щелчка компонента и использоватьuseRouterЧтобы добиться перехода на страницу.

  1. <template>
  2. <v-data-table
  3. :headers="headers"
  4. :items="items"
  5. @click:row="handleRowClick"
  6. ></v-data-table>
  7. </template>
  8. <script setup>
  9. import { useRouter } from 'vue-router';
  10. const router = useRouter();
  11. const headers = [
  12. { text: 'Name', value: 'name' },
  13. { text: 'Age', value: 'age' },
  14. // ...
  15. ];
  16. const items = [
  17. { name: 'John Doe1', age: 30, id: 1 },
  18. { name: 'Jane Smith2', age: 25, id: 2 },
  19. // ...
  20. ];
  21. // 处理行点击事件
  22. function handleRowClick(item) {
  23. // 使用item.id或其他标识符来确定要跳转到的具体页面
  24. router.push(`/user/${item.id}`);
  25. }
  26. </script>

В этом примере при щелчке по любой строке таблицыhandleRowClickФункция будет вызвана и использованаuseRouterизpush Метод перехода на новую страницу, путь к этой странице динамически генерируется идентификатором пользователя.Вам необходимо убедиться, что идентификатор каждого пользователя уникален, чтобы правильно перейти на соответствующую страницу сведений.