Routing ใน vue.js

การจัดการกับการนำทาง (Routing) ใน Vue.js เป็นกระบวนการที่ช่วยให้คุณสร้างแอปพลิเคชันเว็บแบบ single-page application (SPA) ที่มีหลายหน้าและสามารถเปลี่ยนหน้าได้โดยไม่ต้องโหลดหน้าใหม่ ใน Vue.js, คุณสามารถใช้ Vue Router เพื่อจัดการกับการนำทาง. นี่คือขั้นตอนพื้นฐานในการใช้ Vue Router:

  1. ติดตั้ง Vue Router:

เริ่มต้นด้วยการติดตั้ง Vue Router ผ่าน npm หรือ yarn:

1
npm install vue-router

หรือใช้ yarn:

1
yarn add vue-router
  1. เสริมแอปพลิเคชัน Vue.js ของคุณด้วย Vue Router:

ในโครงสร้างโปรเจกต์ Vue.js ของคุณ (ที่สร้างโดย Vue CLI) มักมีไฟล์ src/main.js ซึ่งเป็นตำแหน่งที่คุณสามารถเสริม Vue Router เข้าไป:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
import Vue from 'vue';
import App from './App.vue';
import VueRouter from 'vue-router';

Vue.use(VueRouter);

const router = new VueRouter({
routes: [
// รายการเส้นทางไปยังหน้าต่าง ๆ ของแอปพลิเคชันของคุณ
// ตัวอย่าง:
// { path: '/', component: Home },
// { path: '/about', component: About },
],
});

new Vue({
el: '#app',
router,
render: h => h(App),
});
  1. กำหนดเส้นทาง (Routes):

กำหนดเส้นทางที่คุณต้องการให้แอปพลิเคชันของคุณเปลี่ยนไปยัง. เส้นทาง (route) คือ URL ที่ผู้ใช้จะเข้าถึง เมื่อคุณกำหนดเส้นทางแล้ว คุณต้องกำหนด component ที่จะแสดงหน้าที่เกี่ยวข้อง:

1
2
3
4
5
6
7
const router = new VueRouter({
routes: [
{ path: '/', component: Home }, // หน้าหลัก
{ path: '/about', component: About }, // หน้าเกี่ยวกับ
// เพิ่มเส้นทางอื่น ๆ ตามความต้องการ
],
});
  1. สร้าง Router View:

ใน template ของคุณคุณต้องกำหนด <router-view> เพื่อระบุตำแหน่งที่ component ของเส้นทางจะถูกแสดง:

1
2
3
4
5
<template>
<div>
<router-view></router-view>
</div>
</template>
  1. ลิงก์ไปยังเส้นทางอื่น ๆ:

ใน template ของคุณคุณสามารถใช้คำสั่ง <router-link> เพื่อสร้างลิงก์ที่จะนำทางผู้ใช้ไปยังเส้นทางอื่น ๆ:

1
2
3
4
5
6
<template>
<div>
<router-link to="/">Home</router-link>
<router-link to="/about">About</router-link>
</div>
</template>

นี่เป็นขั้นตอนพื้นฐานในการใช้ Vue Router ในแอปพลิเคชัน Vue.js ของคุณ เมื่อคุณดำเนินการตามขั้นตอนเหล่านี้ แอปพลิเคชันของคุณจะสามารถทำงานแบบ SPA และสามารถเปลี่ยนหน้าโดยไม่ต้องโหลดหน้าใหม่ได้อย่างมีประสิทธิภาพ. คุณสามารถกำหนดเส้นทางเพิ่มเติมและจัดการการนำทางในแอปของคุณตามความต้องการ.