Perutean Berbasis File dan Impor Otomatis
Buat halaman di direktori pages/ untuk perutean otomatis, pahami segmen dinamis, dan manfaatkan impor otomatis Nuxt untuk komponen serta composable.
Perutean Berbasis File dan Impor Otomatis adalah pelajaran Frontend Academy gratis di CoddyKit. Ini adalah pelajaran 1 dari 4. Kamu bisa membaca pelajaran lengkapnya di bawah secara gratis — lalu praktikkan langsung di browser dengan editor kode bawaan dan tutor AI 24/7. Ini adalah bagian dari jalur belajar Frontend Academy, dan progresmu tersinkronisasi di web dan aplikasi CoddyKit. Kursus Frontend Academy mencakup 4 pelajaran total.
Nuxt 3 — Kerangka SSR Vue
Nuxt 3 bagi Vue sama seperti Next.js bagi React: kerangka dengan pendapat yang kuat untuk SSR, SSG, perutean berbasis berkas, pengambilan data, dan sistem impor otomatis yang mendalam.
Direktori pages/
Letakkan komponen Vue di pages/ dan komponen tersebut menjadi rute—tidak diperlukan konfigurasi router.
pages/
index.vue // route: /
about.vue // route: /about
blog/
index.vue // route: /blog
[slug].vue // route: /blog/:slug
users/
[id]/
profile.vue // route: /users/:id/profileRute Dinamis dengan [param]
Kurung siku dalam nama berkas membuat segmen dinamis. Akses param dengan useRoute().
<!-- pages/blog/[slug].vue -->
<script setup>
const route = useRoute();
const { data: post } = await useFetch(`/api/posts/${route.params.slug}`);
</script>
<template>
<article>
<h1>{{ post.title }}</h1>
<div v-html="post.body" />
</article>
</template>Rute Tangkap Semua
Gunakan [...slug].vue untuk rute tangkap semua—rute ini cocok dengan jalur apa pun di bawah direktori tersebut.
// pages/docs/[...slug].vue
// matches /docs/getting-started, /docs/api/auth, etc.
<script setup>
const route = useRoute();
console.log(route.params.slug); // ['api', 'auth']
</script>Tata Letak
Komponen dalam layouts/ membungkus halaman. Tetapkan tata letak aktif per halaman dengan definePageMeta.
<!-- layouts/dashboard.vue -->
<template>
<div class="dashboard">
<Sidebar />
<main><slot /></main>
</div>
</template>
<!-- pages/dashboard/index.vue -->
<script setup>
definePageMeta({ layout: 'dashboard' });
</script>Tata Letak Bawaan
layouts/default.vue diterapkan pada halaman apa pun yang tidak menentukan tata letak.
Navigasi dengan NuxtLink
Gunakan <NuxtLink> untuk navigasi sisi klien—Nuxt melakukan pengambilan awal halaman tertaut saat kursor diarahkan ke atasnya.
<template>
<nav>
<NuxtLink to="/">Home</NuxtLink>
<NuxtLink to="/blog">Blog</NuxtLink>
<NuxtLink :to="`/users/${userId}`">Profile</NuxtLink>
</nav>
</template>Navigasi Terprogram
Gunakan navigateTo() dalam setup atau penangan peristiwa.
<script setup>
async function onLogin() {
await login(form);
await navigateTo('/dashboard');
}
</script>Impor Otomatis — Komponen
Letakkan komponen di components/ dan gunakan di templat mana pun tanpa mengimpornya—Nuxt memindai dan mendaftarkan komponen tersebut.
components/
AppHeader.vue
UserCard.vue
<!-- any page or component: -->
<template>
<AppHeader />
<UserCard :user="user" />
</template>Impor Otomatis — Komposable
Komposable dalam composables/ diimpor secara otomatis.
// composables/useCounter.ts
export const useCounter = () => {
const count = ref(0);
const increment = () => count.value++;
return { count, increment };
};
<!-- any component: -->
<script setup>
const { count, increment } = useCounter(); // no import needed!
</script>Impor Otomatis — Utilitas
Utilitas Vue (ref, reactive, computed, watch, dan sebagainya) serta utilitas Nuxt (useFetch, useState, navigateTo) diimpor secara otomatis.
Menonaktifkan Impor Otomatis
Anda dapat menonaktifkan impor otomatis tertentu dalam nuxt.config.ts jika bertentangan dengan sesuatu yang lain.
export default defineNuxtConfig({
imports: {
autoImport: false // disable all auto-imports
}
});Cek Cepat
Bagaimana cara membuat rute di Nuxt 3 yang cocok dengan jalur apa pun di bawah /docs/?
Ringkasan: Perutean & Impor Otomatis
Folder pages/ membuat rute. [param] untuk rute dinamis, [...slug] untuk tangkap semua. Tata letak dalam layouts/ dipilih melalui definePageMeta. NuxtLink + navigateTo digunakan untuk navigasi. Impor otomatis berlaku untuk komponen, komposable, serta utilitas Vue dan Nuxt—tanpa impor manual. Nonaktifkan dalam nuxt.config.ts jika diperlukan.
Belajar HTML dengan tutor AI — gratis
Tulis dan jalankan kode asli di browser kamu, dapatkan bantuan instan dari tutor AI 24/7, dan lanjutkan di mana kamu tinggalkan di web atau aplikasi.
- Kursus
- 41
- Pelajaran
- 163
Pertanyaan yang Sering Diajukan
Apakah pelajaran “Perutean Berbasis File dan Impor Otomatis” gratis?
Ya — teks lengkap “Perutean Berbasis File dan Impor Otomatis” gratis dibaca di sini di web. Untuk praktiknya secara interaktif (editor kode bawaan dan tutor AI 24/7) dan buka sisa kursus Frontend Academy, upgrade ke CoddyKit PRO. Kursus Frontend Academy mencakup 4 pelajaran total.
Apa yang akan aku pelajari di “Perutean Berbasis File dan Impor Otomatis”?
Buat halaman di direktori pages/ untuk perutean otomatis, pahami segmen dinamis, dan manfaatkan impor otomatis Nuxt untuk komponen serta composable. Kamu berlatih Frontend Academy dengan kode praktik yang langsung kamu jalankan di browser, dan tutor AI 24/7 menjawab pertanyaanmu saat kamu mengerjakan pelajaran ini.
Apakah aku perlu pengalaman untuk memulai Frontend Academy?
Tidak diperlukan pengalaman sebelumnya. Frontend Academy di CoddyKit dirancang untuk pemula hingga pelajar tingkat lanjut, jadi kamu bisa memulai di sini atau dari awal dan belajar sesuai kecepatan kamu sendiri. Ini adalah pelajaran 1 dari 4.
Berapa lama pelajaran “Perutean Berbasis File dan Impor Otomatis” memakan waktu?
Sebagian besar pelajaran CoddyKit memakan waktu sekitar 5–10 menit. Setiap pelajaran ringkas dan interaktif, jadi kamu membuat kemajuan stabil dan melanjutkan dari tempat kamu tinggalkan di web dan aplikasi.
Bisakah aku menulis dan menjalankan kode dalam pelajaran Frontend Academy ini?
Ya. Setiap pelajaran Frontend Academy menyertakan editor kode bawaan, jadi kamu menulis dan menjalankan kode nyata langsung di browser dan mendapatkan umpan balik AI instan — tidak diperlukan penyiapan lokal.
Semua pelajaran dalam kursus ini
- Perutean Berbasis File dan Impor Otomatis
- useFetch dan useAsyncData
- Modul Nuxt: Gambar, Autentikasi, i18n
- Deployment: Statis vs SSR